/export/starexec/sandbox/solver/bin/starexec_run_rcdcRelativeAlsoLower /export/starexec/sandbox/benchmark/theBenchmark.xml /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- KILLED proof of /export/starexec/sandbox/benchmark/theBenchmark.xml # AProVE Commit ID: 794c25de1cacf0d048858bcd21c9a779e1221865 marcel 20200619 unpublished dirty The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, INF). (0) DCpxTrs (1) DerivationalComplexityToRuntimeComplexityProof [BOTH BOUNDS(ID, ID), 0 ms] (2) CpxRelTRS (3) SInnermostTerminationProof [BOTH CONCRETE BOUNDS(ID, ID), 786 ms] (4) CpxRelTRS (5) RenamingProof [BOTH BOUNDS(ID, ID), 0 ms] (6) CpxRelTRS (7) TypeInferenceProof [BOTH BOUNDS(ID, ID), 4 ms] (8) typed CpxTrs (9) OrderProof [LOWER BOUND(ID), 0 ms] (10) typed CpxTrs (11) RelTrsToDecreasingLoopProblemProof [LOWER BOUND(ID), 0 ms] (12) TRS for Loop Detection (13) RelTrsToTrsProof [UPPER BOUND(ID), 0 ms] (14) CpxTRS (15) NonCtorToCtorProof [UPPER BOUND(ID), 0 ms] (16) CpxRelTRS (17) RelTrsToWeightedTrsProof [BOTH BOUNDS(ID, ID), 0 ms] (18) CpxWeightedTrs (19) TypeInferenceProof [BOTH BOUNDS(ID, ID), 0 ms] (20) CpxTypedWeightedTrs (21) CompletionProof [UPPER BOUND(ID), 0 ms] (22) CpxTypedWeightedCompleteTrs (23) CompletionProof [UPPER BOUND(ID), 0 ms] (24) CpxTypedWeightedCompleteTrs (25) CpxTypedWeightedTrsToRntsProof [UPPER BOUND(ID), 4 ms] (26) CpxRNTS (27) CpxTrsToCdtProof [UPPER BOUND(ID), 40 ms] (28) CdtProblem (29) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (30) CdtProblem (31) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 3 ms] (32) CdtProblem (33) CdtGraphSplitRhsProof [BOTH BOUNDS(ID, ID), 0 ms] (34) CdtProblem (35) CdtLeafRemovalProof [ComplexityIfPolyImplication, 0 ms] (36) CdtProblem (37) CdtUsableRulesProof [BOTH BOUNDS(ID, ID), 122 ms] (38) CdtProblem (39) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 36 ms] (40) CdtProblem (41) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 0 ms] (42) CdtProblem (43) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 25 ms] (44) CdtProblem (45) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 0 ms] (46) CdtProblem (47) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 389 ms] (48) CdtProblem (49) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 85 ms] (50) CdtProblem (51) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 233 ms] (52) CdtProblem (53) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 38 ms] (54) CdtProblem (55) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 258 ms] (56) CdtProblem (57) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 57 ms] (58) CdtProblem (59) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 292 ms] (60) CdtProblem (61) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 46 ms] (62) CdtProblem (63) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 334 ms] (64) CdtProblem (65) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 70 ms] (66) CdtProblem (67) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 390 ms] (68) CdtProblem (69) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 71 ms] (70) CdtProblem (71) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 180 ms] (72) CdtProblem (73) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 51 ms] (74) CdtProblem (75) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 469 ms] (76) CdtProblem (77) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 98 ms] (78) CdtProblem (79) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 204 ms] (80) CdtProblem (81) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 34 ms] (82) CdtProblem (83) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 170 ms] (84) CdtProblem (85) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 50 ms] (86) CdtProblem (87) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 192 ms] (88) CdtProblem (89) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 70 ms] (90) CdtProblem (91) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 188 ms] (92) CdtProblem (93) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 56 ms] (94) CdtProblem (95) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 520 ms] (96) CdtProblem (97) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 112 ms] (98) CdtProblem (99) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 219 ms] (100) CdtProblem (101) CdtLeafRemovalProof [BOTH BOUNDS(ID, ID), 95 ms] (102) CdtProblem (103) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 576 ms] (104) CdtProblem (105) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 146 ms] (106) CdtProblem (107) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 120 ms] (108) CdtProblem (109) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 133 ms] (110) CdtProblem (111) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 219 ms] (112) CdtProblem (113) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 281 ms] (114) CdtProblem (115) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 194 ms] (116) CdtProblem (117) CdtRhsSimplificationProcessorProof [BOTH BOUNDS(ID, ID), 81 ms] (118) CdtProblem (119) CdtNarrowingProof [BOTH BOUNDS(ID, ID), 287 ms] (120) CdtProblem ---------------------------------------- (0) Obligation: The Derivational Complexity (innermost) of the given DCpxTrs could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) active(U12(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) active(and(tt, X)) -> mark(X) active(fst(pair(X, Y))) -> mark(X) active(head(cons(N, XS))) -> mark(N) active(natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) active(sel(N, XS)) -> mark(head(afterNth(N, XS))) active(snd(pair(X, Y))) -> mark(Y) active(splitAt(0, XS)) -> mark(pair(nil, XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U11(tt, N, X, XS)) active(tail(cons(N, XS))) -> mark(XS) active(take(N, XS)) -> mark(fst(splitAt(N, XS))) mark(U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) mark(tt) -> active(tt) mark(U12(X1, X2)) -> active(U12(mark(X1), X2)) mark(splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) mark(pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) mark(snd(X)) -> active(snd(mark(X))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(fst(X)) -> active(fst(mark(X))) mark(head(X)) -> active(head(mark(X))) mark(natsFrom(X)) -> active(natsFrom(mark(X))) mark(s(X)) -> active(s(mark(X))) mark(sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(X)) -> active(tail(mark(X))) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) U11(mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, mark(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, mark(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, mark(X4)) -> U11(X1, X2, X3, X4) U11(active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, active(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, active(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, active(X4)) -> U11(X1, X2, X3, X4) U12(mark(X1), X2) -> U12(X1, X2) U12(X1, mark(X2)) -> U12(X1, X2) U12(active(X1), X2) -> U12(X1, X2) U12(X1, active(X2)) -> U12(X1, X2) splitAt(mark(X1), X2) -> splitAt(X1, X2) splitAt(X1, mark(X2)) -> splitAt(X1, X2) splitAt(active(X1), X2) -> splitAt(X1, X2) splitAt(X1, active(X2)) -> splitAt(X1, X2) pair(mark(X1), X2) -> pair(X1, X2) pair(X1, mark(X2)) -> pair(X1, X2) pair(active(X1), X2) -> pair(X1, X2) pair(X1, active(X2)) -> pair(X1, X2) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) afterNth(mark(X1), X2) -> afterNth(X1, X2) afterNth(X1, mark(X2)) -> afterNth(X1, X2) afterNth(active(X1), X2) -> afterNth(X1, X2) afterNth(X1, active(X2)) -> afterNth(X1, X2) snd(mark(X)) -> snd(X) snd(active(X)) -> snd(X) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) fst(mark(X)) -> fst(X) fst(active(X)) -> fst(X) head(mark(X)) -> head(X) head(active(X)) -> head(X) natsFrom(mark(X)) -> natsFrom(X) natsFrom(active(X)) -> natsFrom(X) s(mark(X)) -> s(X) s(active(X)) -> s(X) sel(mark(X1), X2) -> sel(X1, X2) sel(X1, mark(X2)) -> sel(X1, X2) sel(active(X1), X2) -> sel(X1, X2) sel(X1, active(X2)) -> sel(X1, X2) tail(mark(X)) -> tail(X) tail(active(X)) -> tail(X) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (1) DerivationalComplexityToRuntimeComplexityProof (BOTH BOUNDS(ID, ID)) The following rules have been added to S to convert the given derivational complexity problem to a runtime complexity problem: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) encArg(cons_snd(x_1)) -> snd(encArg(x_1)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_fst(x_1)) -> fst(encArg(x_1)) encArg(cons_head(x_1)) -> head(encArg(x_1)) encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) encArg(cons_tail(x_1)) -> tail(encArg(x_1)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encode_active(x_1) -> active(encArg(x_1)) encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_tt -> tt encode_mark(x_1) -> mark(encArg(x_1)) encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) encode_snd(x_1) -> snd(encArg(x_1)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_fst(x_1) -> fst(encArg(x_1)) encode_head(x_1) -> head(encArg(x_1)) encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_nil -> nil encode_tail(x_1) -> tail(encArg(x_1)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) ---------------------------------------- (2) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) active(U12(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) active(and(tt, X)) -> mark(X) active(fst(pair(X, Y))) -> mark(X) active(head(cons(N, XS))) -> mark(N) active(natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) active(sel(N, XS)) -> mark(head(afterNth(N, XS))) active(snd(pair(X, Y))) -> mark(Y) active(splitAt(0, XS)) -> mark(pair(nil, XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U11(tt, N, X, XS)) active(tail(cons(N, XS))) -> mark(XS) active(take(N, XS)) -> mark(fst(splitAt(N, XS))) mark(U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) mark(tt) -> active(tt) mark(U12(X1, X2)) -> active(U12(mark(X1), X2)) mark(splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) mark(pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) mark(snd(X)) -> active(snd(mark(X))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(fst(X)) -> active(fst(mark(X))) mark(head(X)) -> active(head(mark(X))) mark(natsFrom(X)) -> active(natsFrom(mark(X))) mark(s(X)) -> active(s(mark(X))) mark(sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(X)) -> active(tail(mark(X))) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) U11(mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, mark(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, mark(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, mark(X4)) -> U11(X1, X2, X3, X4) U11(active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, active(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, active(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, active(X4)) -> U11(X1, X2, X3, X4) U12(mark(X1), X2) -> U12(X1, X2) U12(X1, mark(X2)) -> U12(X1, X2) U12(active(X1), X2) -> U12(X1, X2) U12(X1, active(X2)) -> U12(X1, X2) splitAt(mark(X1), X2) -> splitAt(X1, X2) splitAt(X1, mark(X2)) -> splitAt(X1, X2) splitAt(active(X1), X2) -> splitAt(X1, X2) splitAt(X1, active(X2)) -> splitAt(X1, X2) pair(mark(X1), X2) -> pair(X1, X2) pair(X1, mark(X2)) -> pair(X1, X2) pair(active(X1), X2) -> pair(X1, X2) pair(X1, active(X2)) -> pair(X1, X2) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) afterNth(mark(X1), X2) -> afterNth(X1, X2) afterNth(X1, mark(X2)) -> afterNth(X1, X2) afterNth(active(X1), X2) -> afterNth(X1, X2) afterNth(X1, active(X2)) -> afterNth(X1, X2) snd(mark(X)) -> snd(X) snd(active(X)) -> snd(X) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) fst(mark(X)) -> fst(X) fst(active(X)) -> fst(X) head(mark(X)) -> head(X) head(active(X)) -> head(X) natsFrom(mark(X)) -> natsFrom(X) natsFrom(active(X)) -> natsFrom(X) s(mark(X)) -> s(X) s(active(X)) -> s(X) sel(mark(X1), X2) -> sel(X1, X2) sel(X1, mark(X2)) -> sel(X1, X2) sel(active(X1), X2) -> sel(X1, X2) sel(X1, active(X2)) -> sel(X1, X2) tail(mark(X)) -> tail(X) tail(active(X)) -> tail(X) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) The (relative) TRS S consists of the following rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) encArg(cons_snd(x_1)) -> snd(encArg(x_1)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_fst(x_1)) -> fst(encArg(x_1)) encArg(cons_head(x_1)) -> head(encArg(x_1)) encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) encArg(cons_tail(x_1)) -> tail(encArg(x_1)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encode_active(x_1) -> active(encArg(x_1)) encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_tt -> tt encode_mark(x_1) -> mark(encArg(x_1)) encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) encode_snd(x_1) -> snd(encArg(x_1)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_fst(x_1) -> fst(encArg(x_1)) encode_head(x_1) -> head(encArg(x_1)) encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_nil -> nil encode_tail(x_1) -> tail(encArg(x_1)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) Rewrite Strategy: INNERMOST ---------------------------------------- (3) SInnermostTerminationProof (BOTH CONCRETE BOUNDS(ID, ID)) proved innermost termination of relative rules ---------------------------------------- (4) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) active(U12(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) active(and(tt, X)) -> mark(X) active(fst(pair(X, Y))) -> mark(X) active(head(cons(N, XS))) -> mark(N) active(natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) active(sel(N, XS)) -> mark(head(afterNth(N, XS))) active(snd(pair(X, Y))) -> mark(Y) active(splitAt(0, XS)) -> mark(pair(nil, XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U11(tt, N, X, XS)) active(tail(cons(N, XS))) -> mark(XS) active(take(N, XS)) -> mark(fst(splitAt(N, XS))) mark(U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) mark(tt) -> active(tt) mark(U12(X1, X2)) -> active(U12(mark(X1), X2)) mark(splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) mark(pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) mark(snd(X)) -> active(snd(mark(X))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(fst(X)) -> active(fst(mark(X))) mark(head(X)) -> active(head(mark(X))) mark(natsFrom(X)) -> active(natsFrom(mark(X))) mark(s(X)) -> active(s(mark(X))) mark(sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(X)) -> active(tail(mark(X))) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) U11(mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, mark(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, mark(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, mark(X4)) -> U11(X1, X2, X3, X4) U11(active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, active(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, active(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, active(X4)) -> U11(X1, X2, X3, X4) U12(mark(X1), X2) -> U12(X1, X2) U12(X1, mark(X2)) -> U12(X1, X2) U12(active(X1), X2) -> U12(X1, X2) U12(X1, active(X2)) -> U12(X1, X2) splitAt(mark(X1), X2) -> splitAt(X1, X2) splitAt(X1, mark(X2)) -> splitAt(X1, X2) splitAt(active(X1), X2) -> splitAt(X1, X2) splitAt(X1, active(X2)) -> splitAt(X1, X2) pair(mark(X1), X2) -> pair(X1, X2) pair(X1, mark(X2)) -> pair(X1, X2) pair(active(X1), X2) -> pair(X1, X2) pair(X1, active(X2)) -> pair(X1, X2) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) afterNth(mark(X1), X2) -> afterNth(X1, X2) afterNth(X1, mark(X2)) -> afterNth(X1, X2) afterNth(active(X1), X2) -> afterNth(X1, X2) afterNth(X1, active(X2)) -> afterNth(X1, X2) snd(mark(X)) -> snd(X) snd(active(X)) -> snd(X) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) fst(mark(X)) -> fst(X) fst(active(X)) -> fst(X) head(mark(X)) -> head(X) head(active(X)) -> head(X) natsFrom(mark(X)) -> natsFrom(X) natsFrom(active(X)) -> natsFrom(X) s(mark(X)) -> s(X) s(active(X)) -> s(X) sel(mark(X1), X2) -> sel(X1, X2) sel(X1, mark(X2)) -> sel(X1, X2) sel(active(X1), X2) -> sel(X1, X2) sel(X1, active(X2)) -> sel(X1, X2) tail(mark(X)) -> tail(X) tail(active(X)) -> tail(X) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) The (relative) TRS S consists of the following rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) encArg(cons_snd(x_1)) -> snd(encArg(x_1)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_fst(x_1)) -> fst(encArg(x_1)) encArg(cons_head(x_1)) -> head(encArg(x_1)) encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) encArg(cons_tail(x_1)) -> tail(encArg(x_1)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encode_active(x_1) -> active(encArg(x_1)) encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_tt -> tt encode_mark(x_1) -> mark(encArg(x_1)) encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) encode_snd(x_1) -> snd(encArg(x_1)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_fst(x_1) -> fst(encArg(x_1)) encode_head(x_1) -> head(encArg(x_1)) encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_nil -> nil encode_tail(x_1) -> tail(encArg(x_1)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) Rewrite Strategy: INNERMOST ---------------------------------------- (5) RenamingProof (BOTH BOUNDS(ID, ID)) Renamed function symbols to avoid clashes with predefined symbol. ---------------------------------------- (6) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) active(U12(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) active(and(tt, X)) -> mark(X) active(fst(pair(X, Y))) -> mark(X) active(head(cons(N, XS))) -> mark(N) active(natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) active(sel(N, XS)) -> mark(head(afterNth(N, XS))) active(snd(pair(X, Y))) -> mark(Y) active(splitAt(0', XS)) -> mark(pair(nil, XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U11(tt, N, X, XS)) active(tail(cons(N, XS))) -> mark(XS) active(take(N, XS)) -> mark(fst(splitAt(N, XS))) mark(U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) mark(tt) -> active(tt) mark(U12(X1, X2)) -> active(U12(mark(X1), X2)) mark(splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) mark(pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) mark(snd(X)) -> active(snd(mark(X))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(fst(X)) -> active(fst(mark(X))) mark(head(X)) -> active(head(mark(X))) mark(natsFrom(X)) -> active(natsFrom(mark(X))) mark(s(X)) -> active(s(mark(X))) mark(sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) mark(0') -> active(0') mark(nil) -> active(nil) mark(tail(X)) -> active(tail(mark(X))) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) U11(mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, mark(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, mark(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, mark(X4)) -> U11(X1, X2, X3, X4) U11(active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, active(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, active(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, active(X4)) -> U11(X1, X2, X3, X4) U12(mark(X1), X2) -> U12(X1, X2) U12(X1, mark(X2)) -> U12(X1, X2) U12(active(X1), X2) -> U12(X1, X2) U12(X1, active(X2)) -> U12(X1, X2) splitAt(mark(X1), X2) -> splitAt(X1, X2) splitAt(X1, mark(X2)) -> splitAt(X1, X2) splitAt(active(X1), X2) -> splitAt(X1, X2) splitAt(X1, active(X2)) -> splitAt(X1, X2) pair(mark(X1), X2) -> pair(X1, X2) pair(X1, mark(X2)) -> pair(X1, X2) pair(active(X1), X2) -> pair(X1, X2) pair(X1, active(X2)) -> pair(X1, X2) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) afterNth(mark(X1), X2) -> afterNth(X1, X2) afterNth(X1, mark(X2)) -> afterNth(X1, X2) afterNth(active(X1), X2) -> afterNth(X1, X2) afterNth(X1, active(X2)) -> afterNth(X1, X2) snd(mark(X)) -> snd(X) snd(active(X)) -> snd(X) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) fst(mark(X)) -> fst(X) fst(active(X)) -> fst(X) head(mark(X)) -> head(X) head(active(X)) -> head(X) natsFrom(mark(X)) -> natsFrom(X) natsFrom(active(X)) -> natsFrom(X) s(mark(X)) -> s(X) s(active(X)) -> s(X) sel(mark(X1), X2) -> sel(X1, X2) sel(X1, mark(X2)) -> sel(X1, X2) sel(active(X1), X2) -> sel(X1, X2) sel(X1, active(X2)) -> sel(X1, X2) tail(mark(X)) -> tail(X) tail(active(X)) -> tail(X) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) The (relative) TRS S consists of the following rules: encArg(tt) -> tt encArg(0') -> 0' encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) encArg(cons_snd(x_1)) -> snd(encArg(x_1)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_fst(x_1)) -> fst(encArg(x_1)) encArg(cons_head(x_1)) -> head(encArg(x_1)) encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) encArg(cons_tail(x_1)) -> tail(encArg(x_1)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encode_active(x_1) -> active(encArg(x_1)) encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_tt -> tt encode_mark(x_1) -> mark(encArg(x_1)) encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) encode_snd(x_1) -> snd(encArg(x_1)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_fst(x_1) -> fst(encArg(x_1)) encode_head(x_1) -> head(encArg(x_1)) encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_nil -> nil encode_tail(x_1) -> tail(encArg(x_1)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) Rewrite Strategy: INNERMOST ---------------------------------------- (7) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (8) Obligation: Innermost TRS: Rules: active(U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) active(U12(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) active(and(tt, X)) -> mark(X) active(fst(pair(X, Y))) -> mark(X) active(head(cons(N, XS))) -> mark(N) active(natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) active(sel(N, XS)) -> mark(head(afterNth(N, XS))) active(snd(pair(X, Y))) -> mark(Y) active(splitAt(0', XS)) -> mark(pair(nil, XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U11(tt, N, X, XS)) active(tail(cons(N, XS))) -> mark(XS) active(take(N, XS)) -> mark(fst(splitAt(N, XS))) mark(U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) mark(tt) -> active(tt) mark(U12(X1, X2)) -> active(U12(mark(X1), X2)) mark(splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) mark(pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) mark(snd(X)) -> active(snd(mark(X))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(fst(X)) -> active(fst(mark(X))) mark(head(X)) -> active(head(mark(X))) mark(natsFrom(X)) -> active(natsFrom(mark(X))) mark(s(X)) -> active(s(mark(X))) mark(sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) mark(0') -> active(0') mark(nil) -> active(nil) mark(tail(X)) -> active(tail(mark(X))) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) U11(mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, mark(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, mark(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, mark(X4)) -> U11(X1, X2, X3, X4) U11(active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, active(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, active(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, active(X4)) -> U11(X1, X2, X3, X4) U12(mark(X1), X2) -> U12(X1, X2) U12(X1, mark(X2)) -> U12(X1, X2) U12(active(X1), X2) -> U12(X1, X2) U12(X1, active(X2)) -> U12(X1, X2) splitAt(mark(X1), X2) -> splitAt(X1, X2) splitAt(X1, mark(X2)) -> splitAt(X1, X2) splitAt(active(X1), X2) -> splitAt(X1, X2) splitAt(X1, active(X2)) -> splitAt(X1, X2) pair(mark(X1), X2) -> pair(X1, X2) pair(X1, mark(X2)) -> pair(X1, X2) pair(active(X1), X2) -> pair(X1, X2) pair(X1, active(X2)) -> pair(X1, X2) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) afterNth(mark(X1), X2) -> afterNth(X1, X2) afterNth(X1, mark(X2)) -> afterNth(X1, X2) afterNth(active(X1), X2) -> afterNth(X1, X2) afterNth(X1, active(X2)) -> afterNth(X1, X2) snd(mark(X)) -> snd(X) snd(active(X)) -> snd(X) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) fst(mark(X)) -> fst(X) fst(active(X)) -> fst(X) head(mark(X)) -> head(X) head(active(X)) -> head(X) natsFrom(mark(X)) -> natsFrom(X) natsFrom(active(X)) -> natsFrom(X) s(mark(X)) -> s(X) s(active(X)) -> s(X) sel(mark(X1), X2) -> sel(X1, X2) sel(X1, mark(X2)) -> sel(X1, X2) sel(active(X1), X2) -> sel(X1, X2) sel(X1, active(X2)) -> sel(X1, X2) tail(mark(X)) -> tail(X) tail(active(X)) -> tail(X) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) encArg(tt) -> tt encArg(0') -> 0' encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) encArg(cons_snd(x_1)) -> snd(encArg(x_1)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_fst(x_1)) -> fst(encArg(x_1)) encArg(cons_head(x_1)) -> head(encArg(x_1)) encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) encArg(cons_tail(x_1)) -> tail(encArg(x_1)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encode_active(x_1) -> active(encArg(x_1)) encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_tt -> tt encode_mark(x_1) -> mark(encArg(x_1)) encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) encode_snd(x_1) -> snd(encArg(x_1)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_fst(x_1) -> fst(encArg(x_1)) encode_head(x_1) -> head(encArg(x_1)) encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_nil -> nil encode_tail(x_1) -> tail(encArg(x_1)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) Types: active :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take U11 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take tt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take mark :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take U12 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take splitAt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take pair :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take afterNth :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take snd :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take and :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take fst :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take head :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take natsFrom :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take s :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take sel :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take 0' :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take nil :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take tail :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take take :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encArg :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_active :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_mark :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_U11 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_U12 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_splitAt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_pair :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_cons :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_afterNth :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_snd :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_and :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_fst :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_head :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_natsFrom :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_s :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_sel :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_tail :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_take :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_active :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_U11 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_tt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_mark :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_U12 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_splitAt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_pair :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_cons :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_afterNth :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_snd :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_and :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_fst :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_head :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_natsFrom :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_s :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_sel :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_0 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_nil :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_tail :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_take :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take hole_tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take1_5 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take gen_tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take2_5 :: Nat -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take ---------------------------------------- (9) OrderProof (LOWER BOUND(ID)) Heuristically decided to analyse the following defined symbols: active, mark, U12, splitAt, pair, cons, snd, natsFrom, s, head, afterNth, U11, fst, and, sel, tail, take, encArg They will be analysed ascendingly in the following order: active = mark U12 < active splitAt < active pair < active cons < active snd < active natsFrom < active s < active head < active afterNth < active U11 < active fst < active active < encArg U12 < mark splitAt < mark pair < mark cons < mark snd < mark natsFrom < mark s < mark head < mark afterNth < mark U11 < mark fst < mark and < mark sel < mark tail < mark take < mark mark < encArg U12 < encArg splitAt < encArg pair < encArg cons < encArg snd < encArg natsFrom < encArg s < encArg head < encArg afterNth < encArg U11 < encArg fst < encArg and < encArg sel < encArg tail < encArg take < encArg ---------------------------------------- (10) Obligation: Innermost TRS: Rules: active(U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) active(U12(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) active(and(tt, X)) -> mark(X) active(fst(pair(X, Y))) -> mark(X) active(head(cons(N, XS))) -> mark(N) active(natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) active(sel(N, XS)) -> mark(head(afterNth(N, XS))) active(snd(pair(X, Y))) -> mark(Y) active(splitAt(0', XS)) -> mark(pair(nil, XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U11(tt, N, X, XS)) active(tail(cons(N, XS))) -> mark(XS) active(take(N, XS)) -> mark(fst(splitAt(N, XS))) mark(U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) mark(tt) -> active(tt) mark(U12(X1, X2)) -> active(U12(mark(X1), X2)) mark(splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) mark(pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) mark(snd(X)) -> active(snd(mark(X))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(fst(X)) -> active(fst(mark(X))) mark(head(X)) -> active(head(mark(X))) mark(natsFrom(X)) -> active(natsFrom(mark(X))) mark(s(X)) -> active(s(mark(X))) mark(sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) mark(0') -> active(0') mark(nil) -> active(nil) mark(tail(X)) -> active(tail(mark(X))) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) U11(mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, mark(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, mark(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, mark(X4)) -> U11(X1, X2, X3, X4) U11(active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, active(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, active(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, active(X4)) -> U11(X1, X2, X3, X4) U12(mark(X1), X2) -> U12(X1, X2) U12(X1, mark(X2)) -> U12(X1, X2) U12(active(X1), X2) -> U12(X1, X2) U12(X1, active(X2)) -> U12(X1, X2) splitAt(mark(X1), X2) -> splitAt(X1, X2) splitAt(X1, mark(X2)) -> splitAt(X1, X2) splitAt(active(X1), X2) -> splitAt(X1, X2) splitAt(X1, active(X2)) -> splitAt(X1, X2) pair(mark(X1), X2) -> pair(X1, X2) pair(X1, mark(X2)) -> pair(X1, X2) pair(active(X1), X2) -> pair(X1, X2) pair(X1, active(X2)) -> pair(X1, X2) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) afterNth(mark(X1), X2) -> afterNth(X1, X2) afterNth(X1, mark(X2)) -> afterNth(X1, X2) afterNth(active(X1), X2) -> afterNth(X1, X2) afterNth(X1, active(X2)) -> afterNth(X1, X2) snd(mark(X)) -> snd(X) snd(active(X)) -> snd(X) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) fst(mark(X)) -> fst(X) fst(active(X)) -> fst(X) head(mark(X)) -> head(X) head(active(X)) -> head(X) natsFrom(mark(X)) -> natsFrom(X) natsFrom(active(X)) -> natsFrom(X) s(mark(X)) -> s(X) s(active(X)) -> s(X) sel(mark(X1), X2) -> sel(X1, X2) sel(X1, mark(X2)) -> sel(X1, X2) sel(active(X1), X2) -> sel(X1, X2) sel(X1, active(X2)) -> sel(X1, X2) tail(mark(X)) -> tail(X) tail(active(X)) -> tail(X) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) encArg(tt) -> tt encArg(0') -> 0' encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) encArg(cons_snd(x_1)) -> snd(encArg(x_1)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_fst(x_1)) -> fst(encArg(x_1)) encArg(cons_head(x_1)) -> head(encArg(x_1)) encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) encArg(cons_tail(x_1)) -> tail(encArg(x_1)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encode_active(x_1) -> active(encArg(x_1)) encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_tt -> tt encode_mark(x_1) -> mark(encArg(x_1)) encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) encode_snd(x_1) -> snd(encArg(x_1)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_fst(x_1) -> fst(encArg(x_1)) encode_head(x_1) -> head(encArg(x_1)) encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) encode_0 -> 0' encode_nil -> nil encode_tail(x_1) -> tail(encArg(x_1)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) Types: active :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take U11 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take tt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take mark :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take U12 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take splitAt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take pair :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take afterNth :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take snd :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take and :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take fst :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take head :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take natsFrom :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take s :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take sel :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take 0' :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take nil :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take tail :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take take :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encArg :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_active :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_mark :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_U11 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_U12 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_splitAt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_pair :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_cons :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_afterNth :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_snd :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_and :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_fst :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_head :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_natsFrom :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_s :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_sel :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_tail :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_take :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_active :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_U11 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_tt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_mark :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_U12 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_splitAt :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_pair :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_cons :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_afterNth :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_snd :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_and :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_fst :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_head :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_natsFrom :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_s :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_sel :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_0 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_nil :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_tail :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_take :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take hole_tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take1_5 :: tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take gen_tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take2_5 :: Nat -> tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take Generator Equations: gen_tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take2_5(0) <=> tt gen_tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take2_5(+(x, 1)) <=> cons_active(gen_tt:0':nil:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take2_5(x)) The following defined symbols remain to be analysed: U12, active, mark, splitAt, pair, cons, snd, natsFrom, s, head, afterNth, U11, fst, and, sel, tail, take, encArg They will be analysed ascendingly in the following order: active = mark U12 < active splitAt < active pair < active cons < active snd < active natsFrom < active s < active head < active afterNth < active U11 < active fst < active active < encArg U12 < mark splitAt < mark pair < mark cons < mark snd < mark natsFrom < mark s < mark head < mark afterNth < mark U11 < mark fst < mark and < mark sel < mark tail < mark take < mark mark < encArg U12 < encArg splitAt < encArg pair < encArg cons < encArg snd < encArg natsFrom < encArg s < encArg head < encArg afterNth < encArg U11 < encArg fst < encArg and < encArg sel < encArg tail < encArg take < encArg ---------------------------------------- (11) RelTrsToDecreasingLoopProblemProof (LOWER BOUND(ID)) Transformed a relative TRS into a decreasing-loop problem. ---------------------------------------- (12) Obligation: Analyzing the following TRS for decreasing loops: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) active(U12(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) active(and(tt, X)) -> mark(X) active(fst(pair(X, Y))) -> mark(X) active(head(cons(N, XS))) -> mark(N) active(natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) active(sel(N, XS)) -> mark(head(afterNth(N, XS))) active(snd(pair(X, Y))) -> mark(Y) active(splitAt(0, XS)) -> mark(pair(nil, XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U11(tt, N, X, XS)) active(tail(cons(N, XS))) -> mark(XS) active(take(N, XS)) -> mark(fst(splitAt(N, XS))) mark(U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) mark(tt) -> active(tt) mark(U12(X1, X2)) -> active(U12(mark(X1), X2)) mark(splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) mark(pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) mark(snd(X)) -> active(snd(mark(X))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(fst(X)) -> active(fst(mark(X))) mark(head(X)) -> active(head(mark(X))) mark(natsFrom(X)) -> active(natsFrom(mark(X))) mark(s(X)) -> active(s(mark(X))) mark(sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(X)) -> active(tail(mark(X))) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) U11(mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, mark(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, mark(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, mark(X4)) -> U11(X1, X2, X3, X4) U11(active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, active(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, active(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, active(X4)) -> U11(X1, X2, X3, X4) U12(mark(X1), X2) -> U12(X1, X2) U12(X1, mark(X2)) -> U12(X1, X2) U12(active(X1), X2) -> U12(X1, X2) U12(X1, active(X2)) -> U12(X1, X2) splitAt(mark(X1), X2) -> splitAt(X1, X2) splitAt(X1, mark(X2)) -> splitAt(X1, X2) splitAt(active(X1), X2) -> splitAt(X1, X2) splitAt(X1, active(X2)) -> splitAt(X1, X2) pair(mark(X1), X2) -> pair(X1, X2) pair(X1, mark(X2)) -> pair(X1, X2) pair(active(X1), X2) -> pair(X1, X2) pair(X1, active(X2)) -> pair(X1, X2) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) afterNth(mark(X1), X2) -> afterNth(X1, X2) afterNth(X1, mark(X2)) -> afterNth(X1, X2) afterNth(active(X1), X2) -> afterNth(X1, X2) afterNth(X1, active(X2)) -> afterNth(X1, X2) snd(mark(X)) -> snd(X) snd(active(X)) -> snd(X) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) fst(mark(X)) -> fst(X) fst(active(X)) -> fst(X) head(mark(X)) -> head(X) head(active(X)) -> head(X) natsFrom(mark(X)) -> natsFrom(X) natsFrom(active(X)) -> natsFrom(X) s(mark(X)) -> s(X) s(active(X)) -> s(X) sel(mark(X1), X2) -> sel(X1, X2) sel(X1, mark(X2)) -> sel(X1, X2) sel(active(X1), X2) -> sel(X1, X2) sel(X1, active(X2)) -> sel(X1, X2) tail(mark(X)) -> tail(X) tail(active(X)) -> tail(X) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) The (relative) TRS S consists of the following rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) encArg(cons_snd(x_1)) -> snd(encArg(x_1)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_fst(x_1)) -> fst(encArg(x_1)) encArg(cons_head(x_1)) -> head(encArg(x_1)) encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) encArg(cons_tail(x_1)) -> tail(encArg(x_1)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encode_active(x_1) -> active(encArg(x_1)) encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_tt -> tt encode_mark(x_1) -> mark(encArg(x_1)) encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) encode_snd(x_1) -> snd(encArg(x_1)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_fst(x_1) -> fst(encArg(x_1)) encode_head(x_1) -> head(encArg(x_1)) encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_nil -> nil encode_tail(x_1) -> tail(encArg(x_1)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) Rewrite Strategy: INNERMOST ---------------------------------------- (13) RelTrsToTrsProof (UPPER BOUND(ID)) transformed relative TRS to TRS ---------------------------------------- (14) Obligation: The Runtime Complexity (innermost) of the given CpxTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: active(U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) active(U12(pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) active(and(tt, X)) -> mark(X) active(fst(pair(X, Y))) -> mark(X) active(head(cons(N, XS))) -> mark(N) active(natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) active(sel(N, XS)) -> mark(head(afterNth(N, XS))) active(snd(pair(X, Y))) -> mark(Y) active(splitAt(0, XS)) -> mark(pair(nil, XS)) active(splitAt(s(N), cons(X, XS))) -> mark(U11(tt, N, X, XS)) active(tail(cons(N, XS))) -> mark(XS) active(take(N, XS)) -> mark(fst(splitAt(N, XS))) mark(U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) mark(tt) -> active(tt) mark(U12(X1, X2)) -> active(U12(mark(X1), X2)) mark(splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) mark(pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) mark(afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) mark(snd(X)) -> active(snd(mark(X))) mark(and(X1, X2)) -> active(and(mark(X1), X2)) mark(fst(X)) -> active(fst(mark(X))) mark(head(X)) -> active(head(mark(X))) mark(natsFrom(X)) -> active(natsFrom(mark(X))) mark(s(X)) -> active(s(mark(X))) mark(sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(X)) -> active(tail(mark(X))) mark(take(X1, X2)) -> active(take(mark(X1), mark(X2))) U11(mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, mark(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, mark(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, mark(X4)) -> U11(X1, X2, X3, X4) U11(active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) U11(X1, active(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, active(X3), X4) -> U11(X1, X2, X3, X4) U11(X1, X2, X3, active(X4)) -> U11(X1, X2, X3, X4) U12(mark(X1), X2) -> U12(X1, X2) U12(X1, mark(X2)) -> U12(X1, X2) U12(active(X1), X2) -> U12(X1, X2) U12(X1, active(X2)) -> U12(X1, X2) splitAt(mark(X1), X2) -> splitAt(X1, X2) splitAt(X1, mark(X2)) -> splitAt(X1, X2) splitAt(active(X1), X2) -> splitAt(X1, X2) splitAt(X1, active(X2)) -> splitAt(X1, X2) pair(mark(X1), X2) -> pair(X1, X2) pair(X1, mark(X2)) -> pair(X1, X2) pair(active(X1), X2) -> pair(X1, X2) pair(X1, active(X2)) -> pair(X1, X2) cons(mark(X1), X2) -> cons(X1, X2) cons(X1, mark(X2)) -> cons(X1, X2) cons(active(X1), X2) -> cons(X1, X2) cons(X1, active(X2)) -> cons(X1, X2) afterNth(mark(X1), X2) -> afterNth(X1, X2) afterNth(X1, mark(X2)) -> afterNth(X1, X2) afterNth(active(X1), X2) -> afterNth(X1, X2) afterNth(X1, active(X2)) -> afterNth(X1, X2) snd(mark(X)) -> snd(X) snd(active(X)) -> snd(X) and(mark(X1), X2) -> and(X1, X2) and(X1, mark(X2)) -> and(X1, X2) and(active(X1), X2) -> and(X1, X2) and(X1, active(X2)) -> and(X1, X2) fst(mark(X)) -> fst(X) fst(active(X)) -> fst(X) head(mark(X)) -> head(X) head(active(X)) -> head(X) natsFrom(mark(X)) -> natsFrom(X) natsFrom(active(X)) -> natsFrom(X) s(mark(X)) -> s(X) s(active(X)) -> s(X) sel(mark(X1), X2) -> sel(X1, X2) sel(X1, mark(X2)) -> sel(X1, X2) sel(active(X1), X2) -> sel(X1, X2) sel(X1, active(X2)) -> sel(X1, X2) tail(mark(X)) -> tail(X) tail(active(X)) -> tail(X) take(mark(X1), X2) -> take(X1, X2) take(X1, mark(X2)) -> take(X1, X2) take(active(X1), X2) -> take(X1, X2) take(X1, active(X2)) -> take(X1, X2) encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) encArg(cons_snd(x_1)) -> snd(encArg(x_1)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_fst(x_1)) -> fst(encArg(x_1)) encArg(cons_head(x_1)) -> head(encArg(x_1)) encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) encArg(cons_tail(x_1)) -> tail(encArg(x_1)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encode_active(x_1) -> active(encArg(x_1)) encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_tt -> tt encode_mark(x_1) -> mark(encArg(x_1)) encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) encode_snd(x_1) -> snd(encArg(x_1)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_fst(x_1) -> fst(encArg(x_1)) encode_head(x_1) -> head(encArg(x_1)) encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_nil -> nil encode_tail(x_1) -> tail(encArg(x_1)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) S is empty. Rewrite Strategy: INNERMOST ---------------------------------------- (15) NonCtorToCtorProof (UPPER BOUND(ID)) transformed non-ctor to ctor-system ---------------------------------------- (16) Obligation: The Runtime Complexity (innermost) of the given CpxRelTRS could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: mark(tt) -> active(tt) mark(0) -> active(0) mark(nil) -> active(nil) U11(X1, X2, X3, c_active(X4)) -> U11(X1, X2, X3, X4) mark(c_head(X)) -> active(head(mark(X))) natsFrom(c_mark(X)) -> natsFrom(X) U11(c_mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) mark(c_snd(X)) -> active(snd(mark(X))) snd(c_active(X)) -> snd(X) pair(X1, c_mark(X2)) -> pair(X1, X2) tail(c_mark(X)) -> tail(X) afterNth(c_active(X1), X2) -> afterNth(X1, X2) mark(c_tail(X)) -> active(tail(mark(X))) pair(c_active(X1), X2) -> pair(X1, X2) cons(c_mark(X1), X2) -> cons(X1, X2) sel(c_active(X1), X2) -> sel(X1, X2) mark(c_pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) afterNth(X1, c_active(X2)) -> afterNth(X1, X2) head(c_active(X)) -> head(X) U12(c_mark(X1), X2) -> U12(X1, X2) active(c_U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) take(c_mark(X1), X2) -> take(X1, X2) U11(X1, c_mark(X2), X3, X4) -> U11(X1, X2, X3, X4) U11(X1, X2, c_active(X3), X4) -> U11(X1, X2, X3, X4) splitAt(X1, c_active(X2)) -> splitAt(X1, X2) splitAt(c_mark(X1), X2) -> splitAt(X1, X2) snd(c_mark(X)) -> snd(X) tail(c_active(X)) -> tail(X) pair(c_mark(X1), X2) -> pair(X1, X2) active(c_snd(c_pair(X, Y))) -> mark(Y) active(c_natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) fst(c_active(X)) -> fst(X) take(c_active(X1), X2) -> take(X1, X2) U12(X1, c_mark(X2)) -> U12(X1, X2) sel(c_mark(X1), X2) -> sel(X1, X2) mark(c_U12(X1, X2)) -> active(U12(mark(X1), X2)) natsFrom(c_active(X)) -> natsFrom(X) afterNth(X1, c_mark(X2)) -> afterNth(X1, X2) active(c_splitAt(c_s(N), c_cons(X, XS))) -> mark(U11(tt, N, X, XS)) mark(c_U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) mark(c_splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) mark(c_fst(X)) -> active(fst(mark(X))) sel(X1, c_active(X2)) -> sel(X1, X2) sel(X1, c_mark(X2)) -> sel(X1, X2) active(c_U12(c_pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) active(c_sel(N, XS)) -> mark(head(afterNth(N, XS))) pair(X1, c_active(X2)) -> pair(X1, X2) U11(X1, X2, c_mark(X3), X4) -> U11(X1, X2, X3, X4) fst(c_mark(X)) -> fst(X) active(c_head(c_cons(N, XS))) -> mark(N) take(X1, c_active(X2)) -> take(X1, X2) splitAt(X1, c_mark(X2)) -> splitAt(X1, X2) splitAt(c_active(X1), X2) -> splitAt(X1, X2) active(c_afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) mark(c_s(X)) -> active(s(mark(X))) mark(c_natsFrom(X)) -> active(natsFrom(mark(X))) U11(X1, c_active(X2), X3, X4) -> U11(X1, X2, X3, X4) active(c_fst(c_pair(X, Y))) -> mark(X) s(c_active(X)) -> s(X) and(c_active(X1), X2) -> and(X1, X2) cons(X1, c_active(X2)) -> cons(X1, X2) mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) U12(X1, c_active(X2)) -> U12(X1, X2) cons(X1, c_mark(X2)) -> cons(X1, X2) U11(c_active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) afterNth(c_mark(X1), X2) -> afterNth(X1, X2) U11(X1, X2, X3, c_mark(X4)) -> U11(X1, X2, X3, X4) take(X1, c_mark(X2)) -> take(X1, X2) s(c_mark(X)) -> s(X) active(c_take(N, XS)) -> mark(fst(splitAt(N, XS))) mark(c_sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) active(c_tail(c_cons(N, XS))) -> mark(XS) active(c_and(tt, X)) -> mark(X) U12(c_active(X1), X2) -> U12(X1, X2) mark(c_afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) head(c_mark(X)) -> head(X) cons(c_active(X1), X2) -> cons(X1, X2) mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) and(X1, c_mark(X2)) -> and(X1, X2) active(c_splitAt(0, XS)) -> mark(pair(nil, XS)) and(c_mark(X1), X2) -> and(X1, X2) and(X1, c_active(X2)) -> and(X1, X2) The (relative) TRS S consists of the following rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(x_1)) -> active(encArg(x_1)) encArg(cons_mark(x_1)) -> mark(encArg(x_1)) encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) encArg(cons_snd(x_1)) -> snd(encArg(x_1)) encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) encArg(cons_fst(x_1)) -> fst(encArg(x_1)) encArg(cons_head(x_1)) -> head(encArg(x_1)) encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) encArg(cons_s(x_1)) -> s(encArg(x_1)) encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) encArg(cons_tail(x_1)) -> tail(encArg(x_1)) encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) encode_active(x_1) -> active(encArg(x_1)) encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) encode_tt -> tt encode_mark(x_1) -> mark(encArg(x_1)) encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) encode_snd(x_1) -> snd(encArg(x_1)) encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) encode_fst(x_1) -> fst(encArg(x_1)) encode_head(x_1) -> head(encArg(x_1)) encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) encode_s(x_1) -> s(encArg(x_1)) encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) encode_0 -> 0 encode_nil -> nil encode_tail(x_1) -> tail(encArg(x_1)) encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) U12(x0, x1) -> c_U12(x0, x1) head(x0) -> c_head(x0) afterNth(x0, x1) -> c_afterNth(x0, x1) sel(x0, x1) -> c_sel(x0, x1) and(x0, x1) -> c_and(x0, x1) U11(x0, x1, x2, x3) -> c_U11(x0, x1, x2, x3) tail(x0) -> c_tail(x0) s(x0) -> c_s(x0) active(x0) -> c_active(x0) splitAt(x0, x1) -> c_splitAt(x0, x1) fst(x0) -> c_fst(x0) take(x0, x1) -> c_take(x0, x1) snd(x0) -> c_snd(x0) cons(x0, x1) -> c_cons(x0, x1) pair(x0, x1) -> c_pair(x0, x1) natsFrom(x0) -> c_natsFrom(x0) mark(x0) -> c_mark(x0) Rewrite Strategy: INNERMOST ---------------------------------------- (17) RelTrsToWeightedTrsProof (BOTH BOUNDS(ID, ID)) Transformed relative TRS to weighted TRS ---------------------------------------- (18) Obligation: The Runtime Complexity (innermost) of the given CpxWeightedTrs could be proven to be BOUNDS(1, INF). The TRS R consists of the following rules: mark(tt) -> active(tt) [1] mark(0) -> active(0) [1] mark(nil) -> active(nil) [1] U11(X1, X2, X3, c_active(X4)) -> U11(X1, X2, X3, X4) [1] mark(c_head(X)) -> active(head(mark(X))) [1] natsFrom(c_mark(X)) -> natsFrom(X) [1] U11(c_mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) [1] mark(c_snd(X)) -> active(snd(mark(X))) [1] snd(c_active(X)) -> snd(X) [1] pair(X1, c_mark(X2)) -> pair(X1, X2) [1] tail(c_mark(X)) -> tail(X) [1] afterNth(c_active(X1), X2) -> afterNth(X1, X2) [1] mark(c_tail(X)) -> active(tail(mark(X))) [1] pair(c_active(X1), X2) -> pair(X1, X2) [1] cons(c_mark(X1), X2) -> cons(X1, X2) [1] sel(c_active(X1), X2) -> sel(X1, X2) [1] mark(c_pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) [1] afterNth(X1, c_active(X2)) -> afterNth(X1, X2) [1] head(c_active(X)) -> head(X) [1] U12(c_mark(X1), X2) -> U12(X1, X2) [1] active(c_U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) [1] take(c_mark(X1), X2) -> take(X1, X2) [1] U11(X1, c_mark(X2), X3, X4) -> U11(X1, X2, X3, X4) [1] U11(X1, X2, c_active(X3), X4) -> U11(X1, X2, X3, X4) [1] splitAt(X1, c_active(X2)) -> splitAt(X1, X2) [1] splitAt(c_mark(X1), X2) -> splitAt(X1, X2) [1] snd(c_mark(X)) -> snd(X) [1] tail(c_active(X)) -> tail(X) [1] pair(c_mark(X1), X2) -> pair(X1, X2) [1] active(c_snd(c_pair(X, Y))) -> mark(Y) [1] active(c_natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) [1] fst(c_active(X)) -> fst(X) [1] take(c_active(X1), X2) -> take(X1, X2) [1] U12(X1, c_mark(X2)) -> U12(X1, X2) [1] sel(c_mark(X1), X2) -> sel(X1, X2) [1] mark(c_U12(X1, X2)) -> active(U12(mark(X1), X2)) [1] natsFrom(c_active(X)) -> natsFrom(X) [1] afterNth(X1, c_mark(X2)) -> afterNth(X1, X2) [1] active(c_splitAt(c_s(N), c_cons(X, XS))) -> mark(U11(tt, N, X, XS)) [1] mark(c_U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) [1] mark(c_splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) [1] mark(c_fst(X)) -> active(fst(mark(X))) [1] sel(X1, c_active(X2)) -> sel(X1, X2) [1] sel(X1, c_mark(X2)) -> sel(X1, X2) [1] active(c_U12(c_pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) [1] active(c_sel(N, XS)) -> mark(head(afterNth(N, XS))) [1] pair(X1, c_active(X2)) -> pair(X1, X2) [1] U11(X1, X2, c_mark(X3), X4) -> U11(X1, X2, X3, X4) [1] fst(c_mark(X)) -> fst(X) [1] active(c_head(c_cons(N, XS))) -> mark(N) [1] take(X1, c_active(X2)) -> take(X1, X2) [1] splitAt(X1, c_mark(X2)) -> splitAt(X1, X2) [1] splitAt(c_active(X1), X2) -> splitAt(X1, X2) [1] active(c_afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) [1] mark(c_s(X)) -> active(s(mark(X))) [1] mark(c_natsFrom(X)) -> active(natsFrom(mark(X))) [1] U11(X1, c_active(X2), X3, X4) -> U11(X1, X2, X3, X4) [1] active(c_fst(c_pair(X, Y))) -> mark(X) [1] s(c_active(X)) -> s(X) [1] and(c_active(X1), X2) -> and(X1, X2) [1] cons(X1, c_active(X2)) -> cons(X1, X2) [1] mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) [1] mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) [1] U12(X1, c_active(X2)) -> U12(X1, X2) [1] cons(X1, c_mark(X2)) -> cons(X1, X2) [1] U11(c_active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) [1] afterNth(c_mark(X1), X2) -> afterNth(X1, X2) [1] U11(X1, X2, X3, c_mark(X4)) -> U11(X1, X2, X3, X4) [1] take(X1, c_mark(X2)) -> take(X1, X2) [1] s(c_mark(X)) -> s(X) [1] active(c_take(N, XS)) -> mark(fst(splitAt(N, XS))) [1] mark(c_sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) [1] active(c_tail(c_cons(N, XS))) -> mark(XS) [1] active(c_and(tt, X)) -> mark(X) [1] U12(c_active(X1), X2) -> U12(X1, X2) [1] mark(c_afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) [1] head(c_mark(X)) -> head(X) [1] cons(c_active(X1), X2) -> cons(X1, X2) [1] mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) [1] and(X1, c_mark(X2)) -> and(X1, X2) [1] active(c_splitAt(0, XS)) -> mark(pair(nil, XS)) [1] and(c_mark(X1), X2) -> and(X1, X2) [1] and(X1, c_active(X2)) -> and(X1, X2) [1] encArg(tt) -> tt [0] encArg(0) -> 0 [0] encArg(nil) -> nil [0] encArg(cons_active(x_1)) -> active(encArg(x_1)) [0] encArg(cons_mark(x_1)) -> mark(encArg(x_1)) [0] encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) [0] encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) [0] encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) [0] encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) [0] encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) [0] encArg(cons_snd(x_1)) -> snd(encArg(x_1)) [0] encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) [0] encArg(cons_fst(x_1)) -> fst(encArg(x_1)) [0] encArg(cons_head(x_1)) -> head(encArg(x_1)) [0] encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) [0] encArg(cons_tail(x_1)) -> tail(encArg(x_1)) [0] encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) [0] encode_active(x_1) -> active(encArg(x_1)) [0] encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encode_tt -> tt [0] encode_mark(x_1) -> mark(encArg(x_1)) [0] encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) [0] encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) [0] encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) [0] encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) [0] encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) [0] encode_snd(x_1) -> snd(encArg(x_1)) [0] encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) [0] encode_fst(x_1) -> fst(encArg(x_1)) [0] encode_head(x_1) -> head(encArg(x_1)) [0] encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_nil -> nil [0] encode_tail(x_1) -> tail(encArg(x_1)) [0] encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) [0] U12(x0, x1) -> c_U12(x0, x1) [0] head(x0) -> c_head(x0) [0] afterNth(x0, x1) -> c_afterNth(x0, x1) [0] sel(x0, x1) -> c_sel(x0, x1) [0] and(x0, x1) -> c_and(x0, x1) [0] U11(x0, x1, x2, x3) -> c_U11(x0, x1, x2, x3) [0] tail(x0) -> c_tail(x0) [0] s(x0) -> c_s(x0) [0] active(x0) -> c_active(x0) [0] splitAt(x0, x1) -> c_splitAt(x0, x1) [0] fst(x0) -> c_fst(x0) [0] take(x0, x1) -> c_take(x0, x1) [0] snd(x0) -> c_snd(x0) [0] cons(x0, x1) -> c_cons(x0, x1) [0] pair(x0, x1) -> c_pair(x0, x1) [0] natsFrom(x0) -> c_natsFrom(x0) [0] mark(x0) -> c_mark(x0) [0] Rewrite Strategy: INNERMOST ---------------------------------------- (19) TypeInferenceProof (BOTH BOUNDS(ID, ID)) Infered types. ---------------------------------------- (20) Obligation: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: mark(tt) -> active(tt) [1] mark(0) -> active(0) [1] mark(nil) -> active(nil) [1] U11(X1, X2, X3, c_active(X4)) -> U11(X1, X2, X3, X4) [1] mark(c_head(X)) -> active(head(mark(X))) [1] natsFrom(c_mark(X)) -> natsFrom(X) [1] U11(c_mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) [1] mark(c_snd(X)) -> active(snd(mark(X))) [1] snd(c_active(X)) -> snd(X) [1] pair(X1, c_mark(X2)) -> pair(X1, X2) [1] tail(c_mark(X)) -> tail(X) [1] afterNth(c_active(X1), X2) -> afterNth(X1, X2) [1] mark(c_tail(X)) -> active(tail(mark(X))) [1] pair(c_active(X1), X2) -> pair(X1, X2) [1] cons(c_mark(X1), X2) -> cons(X1, X2) [1] sel(c_active(X1), X2) -> sel(X1, X2) [1] mark(c_pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) [1] afterNth(X1, c_active(X2)) -> afterNth(X1, X2) [1] head(c_active(X)) -> head(X) [1] U12(c_mark(X1), X2) -> U12(X1, X2) [1] active(c_U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) [1] take(c_mark(X1), X2) -> take(X1, X2) [1] U11(X1, c_mark(X2), X3, X4) -> U11(X1, X2, X3, X4) [1] U11(X1, X2, c_active(X3), X4) -> U11(X1, X2, X3, X4) [1] splitAt(X1, c_active(X2)) -> splitAt(X1, X2) [1] splitAt(c_mark(X1), X2) -> splitAt(X1, X2) [1] snd(c_mark(X)) -> snd(X) [1] tail(c_active(X)) -> tail(X) [1] pair(c_mark(X1), X2) -> pair(X1, X2) [1] active(c_snd(c_pair(X, Y))) -> mark(Y) [1] active(c_natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) [1] fst(c_active(X)) -> fst(X) [1] take(c_active(X1), X2) -> take(X1, X2) [1] U12(X1, c_mark(X2)) -> U12(X1, X2) [1] sel(c_mark(X1), X2) -> sel(X1, X2) [1] mark(c_U12(X1, X2)) -> active(U12(mark(X1), X2)) [1] natsFrom(c_active(X)) -> natsFrom(X) [1] afterNth(X1, c_mark(X2)) -> afterNth(X1, X2) [1] active(c_splitAt(c_s(N), c_cons(X, XS))) -> mark(U11(tt, N, X, XS)) [1] mark(c_U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) [1] mark(c_splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) [1] mark(c_fst(X)) -> active(fst(mark(X))) [1] sel(X1, c_active(X2)) -> sel(X1, X2) [1] sel(X1, c_mark(X2)) -> sel(X1, X2) [1] active(c_U12(c_pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) [1] active(c_sel(N, XS)) -> mark(head(afterNth(N, XS))) [1] pair(X1, c_active(X2)) -> pair(X1, X2) [1] U11(X1, X2, c_mark(X3), X4) -> U11(X1, X2, X3, X4) [1] fst(c_mark(X)) -> fst(X) [1] active(c_head(c_cons(N, XS))) -> mark(N) [1] take(X1, c_active(X2)) -> take(X1, X2) [1] splitAt(X1, c_mark(X2)) -> splitAt(X1, X2) [1] splitAt(c_active(X1), X2) -> splitAt(X1, X2) [1] active(c_afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) [1] mark(c_s(X)) -> active(s(mark(X))) [1] mark(c_natsFrom(X)) -> active(natsFrom(mark(X))) [1] U11(X1, c_active(X2), X3, X4) -> U11(X1, X2, X3, X4) [1] active(c_fst(c_pair(X, Y))) -> mark(X) [1] s(c_active(X)) -> s(X) [1] and(c_active(X1), X2) -> and(X1, X2) [1] cons(X1, c_active(X2)) -> cons(X1, X2) [1] mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) [1] mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) [1] U12(X1, c_active(X2)) -> U12(X1, X2) [1] cons(X1, c_mark(X2)) -> cons(X1, X2) [1] U11(c_active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) [1] afterNth(c_mark(X1), X2) -> afterNth(X1, X2) [1] U11(X1, X2, X3, c_mark(X4)) -> U11(X1, X2, X3, X4) [1] take(X1, c_mark(X2)) -> take(X1, X2) [1] s(c_mark(X)) -> s(X) [1] active(c_take(N, XS)) -> mark(fst(splitAt(N, XS))) [1] mark(c_sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) [1] active(c_tail(c_cons(N, XS))) -> mark(XS) [1] active(c_and(tt, X)) -> mark(X) [1] U12(c_active(X1), X2) -> U12(X1, X2) [1] mark(c_afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) [1] head(c_mark(X)) -> head(X) [1] cons(c_active(X1), X2) -> cons(X1, X2) [1] mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) [1] and(X1, c_mark(X2)) -> and(X1, X2) [1] active(c_splitAt(0, XS)) -> mark(pair(nil, XS)) [1] and(c_mark(X1), X2) -> and(X1, X2) [1] and(X1, c_active(X2)) -> and(X1, X2) [1] encArg(tt) -> tt [0] encArg(0) -> 0 [0] encArg(nil) -> nil [0] encArg(cons_active(x_1)) -> active(encArg(x_1)) [0] encArg(cons_mark(x_1)) -> mark(encArg(x_1)) [0] encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) [0] encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) [0] encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) [0] encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) [0] encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) [0] encArg(cons_snd(x_1)) -> snd(encArg(x_1)) [0] encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) [0] encArg(cons_fst(x_1)) -> fst(encArg(x_1)) [0] encArg(cons_head(x_1)) -> head(encArg(x_1)) [0] encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) [0] encArg(cons_tail(x_1)) -> tail(encArg(x_1)) [0] encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) [0] encode_active(x_1) -> active(encArg(x_1)) [0] encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encode_tt -> tt [0] encode_mark(x_1) -> mark(encArg(x_1)) [0] encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) [0] encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) [0] encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) [0] encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) [0] encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) [0] encode_snd(x_1) -> snd(encArg(x_1)) [0] encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) [0] encode_fst(x_1) -> fst(encArg(x_1)) [0] encode_head(x_1) -> head(encArg(x_1)) [0] encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_nil -> nil [0] encode_tail(x_1) -> tail(encArg(x_1)) [0] encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) [0] U12(x0, x1) -> c_U12(x0, x1) [0] head(x0) -> c_head(x0) [0] afterNth(x0, x1) -> c_afterNth(x0, x1) [0] sel(x0, x1) -> c_sel(x0, x1) [0] and(x0, x1) -> c_and(x0, x1) [0] U11(x0, x1, x2, x3) -> c_U11(x0, x1, x2, x3) [0] tail(x0) -> c_tail(x0) [0] s(x0) -> c_s(x0) [0] active(x0) -> c_active(x0) [0] splitAt(x0, x1) -> c_splitAt(x0, x1) [0] fst(x0) -> c_fst(x0) [0] take(x0, x1) -> c_take(x0, x1) [0] snd(x0) -> c_snd(x0) [0] cons(x0, x1) -> c_cons(x0, x1) [0] pair(x0, x1) -> c_pair(x0, x1) [0] natsFrom(x0) -> c_natsFrom(x0) [0] mark(x0) -> c_mark(x0) [0] The TRS has the following type information: mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take tt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take 0 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take nil :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take c_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encArg :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take cons_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_tt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_0 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_nil :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take encode_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take Rewrite Strategy: INNERMOST ---------------------------------------- (21) CompletionProof (UPPER BOUND(ID)) The transformation into a RNTS is sound, since: (a) The obligation is a constructor system where every type has a constant constructor, (b) The following defined symbols do not have to be completely defined, as they can never occur inside other defined symbols: none (c) The following functions are completely defined: encArg_1 encode_active_1 encode_U11_4 encode_tt encode_mark_1 encode_U12_2 encode_splitAt_2 encode_pair_2 encode_cons_2 encode_afterNth_2 encode_snd_1 encode_and_2 encode_fst_1 encode_head_1 encode_natsFrom_1 encode_s_1 encode_sel_2 encode_0 encode_nil encode_tail_1 encode_take_2 U12_2 head_1 afterNth_2 sel_2 and_2 U11_4 tail_1 s_1 active_1 splitAt_2 fst_1 take_2 snd_1 cons_2 pair_2 natsFrom_1 mark_1 Due to the following rules being added: encArg(v0) -> null_encArg [0] encode_active(v0) -> null_encode_active [0] encode_U11(v0, v1, v2, v3) -> null_encode_U11 [0] encode_tt -> null_encode_tt [0] encode_mark(v0) -> null_encode_mark [0] encode_U12(v0, v1) -> null_encode_U12 [0] encode_splitAt(v0, v1) -> null_encode_splitAt [0] encode_pair(v0, v1) -> null_encode_pair [0] encode_cons(v0, v1) -> null_encode_cons [0] encode_afterNth(v0, v1) -> null_encode_afterNth [0] encode_snd(v0) -> null_encode_snd [0] encode_and(v0, v1) -> null_encode_and [0] encode_fst(v0) -> null_encode_fst [0] encode_head(v0) -> null_encode_head [0] encode_natsFrom(v0) -> null_encode_natsFrom [0] encode_s(v0) -> null_encode_s [0] encode_sel(v0, v1) -> null_encode_sel [0] encode_0 -> null_encode_0 [0] encode_nil -> null_encode_nil [0] encode_tail(v0) -> null_encode_tail [0] encode_take(v0, v1) -> null_encode_take [0] U12(v0, v1) -> null_U12 [0] head(v0) -> null_head [0] afterNth(v0, v1) -> null_afterNth [0] sel(v0, v1) -> null_sel [0] and(v0, v1) -> null_and [0] U11(v0, v1, v2, v3) -> null_U11 [0] tail(v0) -> null_tail [0] s(v0) -> null_s [0] active(v0) -> null_active [0] splitAt(v0, v1) -> null_splitAt [0] fst(v0) -> null_fst [0] take(v0, v1) -> null_take [0] snd(v0) -> null_snd [0] cons(v0, v1) -> null_cons [0] pair(v0, v1) -> null_pair [0] natsFrom(v0) -> null_natsFrom [0] mark(v0) -> null_mark [0] And the following fresh constants: null_encArg, null_encode_active, null_encode_U11, null_encode_tt, null_encode_mark, null_encode_U12, null_encode_splitAt, null_encode_pair, null_encode_cons, null_encode_afterNth, null_encode_snd, null_encode_and, null_encode_fst, null_encode_head, null_encode_natsFrom, null_encode_s, null_encode_sel, null_encode_0, null_encode_nil, null_encode_tail, null_encode_take, null_U12, null_head, null_afterNth, null_sel, null_and, null_U11, null_tail, null_s, null_active, null_splitAt, null_fst, null_take, null_snd, null_cons, null_pair, null_natsFrom, null_mark ---------------------------------------- (22) Obligation: Runtime Complexity Weighted TRS where critical functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: mark(tt) -> active(tt) [1] mark(0) -> active(0) [1] mark(nil) -> active(nil) [1] U11(X1, X2, X3, c_active(X4)) -> U11(X1, X2, X3, X4) [1] mark(c_head(X)) -> active(head(mark(X))) [1] natsFrom(c_mark(X)) -> natsFrom(X) [1] U11(c_mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) [1] mark(c_snd(X)) -> active(snd(mark(X))) [1] snd(c_active(X)) -> snd(X) [1] pair(X1, c_mark(X2)) -> pair(X1, X2) [1] tail(c_mark(X)) -> tail(X) [1] afterNth(c_active(X1), X2) -> afterNth(X1, X2) [1] mark(c_tail(X)) -> active(tail(mark(X))) [1] pair(c_active(X1), X2) -> pair(X1, X2) [1] cons(c_mark(X1), X2) -> cons(X1, X2) [1] sel(c_active(X1), X2) -> sel(X1, X2) [1] mark(c_pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) [1] afterNth(X1, c_active(X2)) -> afterNth(X1, X2) [1] head(c_active(X)) -> head(X) [1] U12(c_mark(X1), X2) -> U12(X1, X2) [1] active(c_U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) [1] take(c_mark(X1), X2) -> take(X1, X2) [1] U11(X1, c_mark(X2), X3, X4) -> U11(X1, X2, X3, X4) [1] U11(X1, X2, c_active(X3), X4) -> U11(X1, X2, X3, X4) [1] splitAt(X1, c_active(X2)) -> splitAt(X1, X2) [1] splitAt(c_mark(X1), X2) -> splitAt(X1, X2) [1] snd(c_mark(X)) -> snd(X) [1] tail(c_active(X)) -> tail(X) [1] pair(c_mark(X1), X2) -> pair(X1, X2) [1] active(c_snd(c_pair(X, Y))) -> mark(Y) [1] active(c_natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) [1] fst(c_active(X)) -> fst(X) [1] take(c_active(X1), X2) -> take(X1, X2) [1] U12(X1, c_mark(X2)) -> U12(X1, X2) [1] sel(c_mark(X1), X2) -> sel(X1, X2) [1] mark(c_U12(X1, X2)) -> active(U12(mark(X1), X2)) [1] natsFrom(c_active(X)) -> natsFrom(X) [1] afterNth(X1, c_mark(X2)) -> afterNth(X1, X2) [1] active(c_splitAt(c_s(N), c_cons(X, XS))) -> mark(U11(tt, N, X, XS)) [1] mark(c_U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) [1] mark(c_splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) [1] mark(c_fst(X)) -> active(fst(mark(X))) [1] sel(X1, c_active(X2)) -> sel(X1, X2) [1] sel(X1, c_mark(X2)) -> sel(X1, X2) [1] active(c_U12(c_pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) [1] active(c_sel(N, XS)) -> mark(head(afterNth(N, XS))) [1] pair(X1, c_active(X2)) -> pair(X1, X2) [1] U11(X1, X2, c_mark(X3), X4) -> U11(X1, X2, X3, X4) [1] fst(c_mark(X)) -> fst(X) [1] active(c_head(c_cons(N, XS))) -> mark(N) [1] take(X1, c_active(X2)) -> take(X1, X2) [1] splitAt(X1, c_mark(X2)) -> splitAt(X1, X2) [1] splitAt(c_active(X1), X2) -> splitAt(X1, X2) [1] active(c_afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) [1] mark(c_s(X)) -> active(s(mark(X))) [1] mark(c_natsFrom(X)) -> active(natsFrom(mark(X))) [1] U11(X1, c_active(X2), X3, X4) -> U11(X1, X2, X3, X4) [1] active(c_fst(c_pair(X, Y))) -> mark(X) [1] s(c_active(X)) -> s(X) [1] and(c_active(X1), X2) -> and(X1, X2) [1] cons(X1, c_active(X2)) -> cons(X1, X2) [1] mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) [1] mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) [1] U12(X1, c_active(X2)) -> U12(X1, X2) [1] cons(X1, c_mark(X2)) -> cons(X1, X2) [1] U11(c_active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) [1] afterNth(c_mark(X1), X2) -> afterNth(X1, X2) [1] U11(X1, X2, X3, c_mark(X4)) -> U11(X1, X2, X3, X4) [1] take(X1, c_mark(X2)) -> take(X1, X2) [1] s(c_mark(X)) -> s(X) [1] active(c_take(N, XS)) -> mark(fst(splitAt(N, XS))) [1] mark(c_sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) [1] active(c_tail(c_cons(N, XS))) -> mark(XS) [1] active(c_and(tt, X)) -> mark(X) [1] U12(c_active(X1), X2) -> U12(X1, X2) [1] mark(c_afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) [1] head(c_mark(X)) -> head(X) [1] cons(c_active(X1), X2) -> cons(X1, X2) [1] mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) [1] and(X1, c_mark(X2)) -> and(X1, X2) [1] active(c_splitAt(0, XS)) -> mark(pair(nil, XS)) [1] and(c_mark(X1), X2) -> and(X1, X2) [1] and(X1, c_active(X2)) -> and(X1, X2) [1] encArg(tt) -> tt [0] encArg(0) -> 0 [0] encArg(nil) -> nil [0] encArg(cons_active(x_1)) -> active(encArg(x_1)) [0] encArg(cons_mark(x_1)) -> mark(encArg(x_1)) [0] encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) [0] encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) [0] encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) [0] encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) [0] encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) [0] encArg(cons_snd(x_1)) -> snd(encArg(x_1)) [0] encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) [0] encArg(cons_fst(x_1)) -> fst(encArg(x_1)) [0] encArg(cons_head(x_1)) -> head(encArg(x_1)) [0] encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) [0] encArg(cons_tail(x_1)) -> tail(encArg(x_1)) [0] encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) [0] encode_active(x_1) -> active(encArg(x_1)) [0] encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encode_tt -> tt [0] encode_mark(x_1) -> mark(encArg(x_1)) [0] encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) [0] encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) [0] encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) [0] encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) [0] encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) [0] encode_snd(x_1) -> snd(encArg(x_1)) [0] encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) [0] encode_fst(x_1) -> fst(encArg(x_1)) [0] encode_head(x_1) -> head(encArg(x_1)) [0] encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_nil -> nil [0] encode_tail(x_1) -> tail(encArg(x_1)) [0] encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) [0] U12(x0, x1) -> c_U12(x0, x1) [0] head(x0) -> c_head(x0) [0] afterNth(x0, x1) -> c_afterNth(x0, x1) [0] sel(x0, x1) -> c_sel(x0, x1) [0] and(x0, x1) -> c_and(x0, x1) [0] U11(x0, x1, x2, x3) -> c_U11(x0, x1, x2, x3) [0] tail(x0) -> c_tail(x0) [0] s(x0) -> c_s(x0) [0] active(x0) -> c_active(x0) [0] splitAt(x0, x1) -> c_splitAt(x0, x1) [0] fst(x0) -> c_fst(x0) [0] take(x0, x1) -> c_take(x0, x1) [0] snd(x0) -> c_snd(x0) [0] cons(x0, x1) -> c_cons(x0, x1) [0] pair(x0, x1) -> c_pair(x0, x1) [0] natsFrom(x0) -> c_natsFrom(x0) [0] mark(x0) -> c_mark(x0) [0] encArg(v0) -> null_encArg [0] encode_active(v0) -> null_encode_active [0] encode_U11(v0, v1, v2, v3) -> null_encode_U11 [0] encode_tt -> null_encode_tt [0] encode_mark(v0) -> null_encode_mark [0] encode_U12(v0, v1) -> null_encode_U12 [0] encode_splitAt(v0, v1) -> null_encode_splitAt [0] encode_pair(v0, v1) -> null_encode_pair [0] encode_cons(v0, v1) -> null_encode_cons [0] encode_afterNth(v0, v1) -> null_encode_afterNth [0] encode_snd(v0) -> null_encode_snd [0] encode_and(v0, v1) -> null_encode_and [0] encode_fst(v0) -> null_encode_fst [0] encode_head(v0) -> null_encode_head [0] encode_natsFrom(v0) -> null_encode_natsFrom [0] encode_s(v0) -> null_encode_s [0] encode_sel(v0, v1) -> null_encode_sel [0] encode_0 -> null_encode_0 [0] encode_nil -> null_encode_nil [0] encode_tail(v0) -> null_encode_tail [0] encode_take(v0, v1) -> null_encode_take [0] U12(v0, v1) -> null_U12 [0] head(v0) -> null_head [0] afterNth(v0, v1) -> null_afterNth [0] sel(v0, v1) -> null_sel [0] and(v0, v1) -> null_and [0] U11(v0, v1, v2, v3) -> null_U11 [0] tail(v0) -> null_tail [0] s(v0) -> null_s [0] active(v0) -> null_active [0] splitAt(v0, v1) -> null_splitAt [0] fst(v0) -> null_fst [0] take(v0, v1) -> null_take [0] snd(v0) -> null_snd [0] cons(v0, v1) -> null_cons [0] pair(v0, v1) -> null_pair [0] natsFrom(v0) -> null_natsFrom [0] mark(v0) -> null_mark [0] The TRS has the following type information: mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark tt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark 0 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark nil :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encArg :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_tt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_0 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_nil :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encArg :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_tt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_0 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_nil :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark Rewrite Strategy: INNERMOST ---------------------------------------- (23) CompletionProof (UPPER BOUND(ID)) The TRS is a completely defined constructor system, as every type has a constant constructor and the following rules were added: encArg(v0) -> null_encArg [0] encode_active(v0) -> null_encode_active [0] encode_U11(v0, v1, v2, v3) -> null_encode_U11 [0] encode_tt -> null_encode_tt [0] encode_mark(v0) -> null_encode_mark [0] encode_U12(v0, v1) -> null_encode_U12 [0] encode_splitAt(v0, v1) -> null_encode_splitAt [0] encode_pair(v0, v1) -> null_encode_pair [0] encode_cons(v0, v1) -> null_encode_cons [0] encode_afterNth(v0, v1) -> null_encode_afterNth [0] encode_snd(v0) -> null_encode_snd [0] encode_and(v0, v1) -> null_encode_and [0] encode_fst(v0) -> null_encode_fst [0] encode_head(v0) -> null_encode_head [0] encode_natsFrom(v0) -> null_encode_natsFrom [0] encode_s(v0) -> null_encode_s [0] encode_sel(v0, v1) -> null_encode_sel [0] encode_0 -> null_encode_0 [0] encode_nil -> null_encode_nil [0] encode_tail(v0) -> null_encode_tail [0] encode_take(v0, v1) -> null_encode_take [0] U12(v0, v1) -> null_U12 [0] head(v0) -> null_head [0] afterNth(v0, v1) -> null_afterNth [0] sel(v0, v1) -> null_sel [0] and(v0, v1) -> null_and [0] U11(v0, v1, v2, v3) -> null_U11 [0] tail(v0) -> null_tail [0] s(v0) -> null_s [0] active(v0) -> null_active [0] splitAt(v0, v1) -> null_splitAt [0] fst(v0) -> null_fst [0] take(v0, v1) -> null_take [0] snd(v0) -> null_snd [0] cons(v0, v1) -> null_cons [0] pair(v0, v1) -> null_pair [0] natsFrom(v0) -> null_natsFrom [0] mark(v0) -> null_mark [0] And the following fresh constants: null_encArg, null_encode_active, null_encode_U11, null_encode_tt, null_encode_mark, null_encode_U12, null_encode_splitAt, null_encode_pair, null_encode_cons, null_encode_afterNth, null_encode_snd, null_encode_and, null_encode_fst, null_encode_head, null_encode_natsFrom, null_encode_s, null_encode_sel, null_encode_0, null_encode_nil, null_encode_tail, null_encode_take, null_U12, null_head, null_afterNth, null_sel, null_and, null_U11, null_tail, null_s, null_active, null_splitAt, null_fst, null_take, null_snd, null_cons, null_pair, null_natsFrom, null_mark ---------------------------------------- (24) Obligation: Runtime Complexity Weighted TRS where all functions are completely defined. The underlying TRS is: Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules: mark(tt) -> active(tt) [1] mark(0) -> active(0) [1] mark(nil) -> active(nil) [1] U11(X1, X2, X3, c_active(X4)) -> U11(X1, X2, X3, X4) [1] mark(c_head(X)) -> active(head(mark(X))) [1] natsFrom(c_mark(X)) -> natsFrom(X) [1] U11(c_mark(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) [1] mark(c_snd(X)) -> active(snd(mark(X))) [1] snd(c_active(X)) -> snd(X) [1] pair(X1, c_mark(X2)) -> pair(X1, X2) [1] tail(c_mark(X)) -> tail(X) [1] afterNth(c_active(X1), X2) -> afterNth(X1, X2) [1] mark(c_tail(X)) -> active(tail(mark(X))) [1] pair(c_active(X1), X2) -> pair(X1, X2) [1] cons(c_mark(X1), X2) -> cons(X1, X2) [1] sel(c_active(X1), X2) -> sel(X1, X2) [1] mark(c_pair(X1, X2)) -> active(pair(mark(X1), mark(X2))) [1] afterNth(X1, c_active(X2)) -> afterNth(X1, X2) [1] head(c_active(X)) -> head(X) [1] U12(c_mark(X1), X2) -> U12(X1, X2) [1] active(c_U11(tt, N, X, XS)) -> mark(U12(splitAt(N, XS), X)) [1] take(c_mark(X1), X2) -> take(X1, X2) [1] U11(X1, c_mark(X2), X3, X4) -> U11(X1, X2, X3, X4) [1] U11(X1, X2, c_active(X3), X4) -> U11(X1, X2, X3, X4) [1] splitAt(X1, c_active(X2)) -> splitAt(X1, X2) [1] splitAt(c_mark(X1), X2) -> splitAt(X1, X2) [1] snd(c_mark(X)) -> snd(X) [1] tail(c_active(X)) -> tail(X) [1] pair(c_mark(X1), X2) -> pair(X1, X2) [1] active(c_snd(c_pair(X, Y))) -> mark(Y) [1] active(c_natsFrom(N)) -> mark(cons(N, natsFrom(s(N)))) [1] fst(c_active(X)) -> fst(X) [1] take(c_active(X1), X2) -> take(X1, X2) [1] U12(X1, c_mark(X2)) -> U12(X1, X2) [1] sel(c_mark(X1), X2) -> sel(X1, X2) [1] mark(c_U12(X1, X2)) -> active(U12(mark(X1), X2)) [1] natsFrom(c_active(X)) -> natsFrom(X) [1] afterNth(X1, c_mark(X2)) -> afterNth(X1, X2) [1] active(c_splitAt(c_s(N), c_cons(X, XS))) -> mark(U11(tt, N, X, XS)) [1] mark(c_U11(X1, X2, X3, X4)) -> active(U11(mark(X1), X2, X3, X4)) [1] mark(c_splitAt(X1, X2)) -> active(splitAt(mark(X1), mark(X2))) [1] mark(c_fst(X)) -> active(fst(mark(X))) [1] sel(X1, c_active(X2)) -> sel(X1, X2) [1] sel(X1, c_mark(X2)) -> sel(X1, X2) [1] active(c_U12(c_pair(YS, ZS), X)) -> mark(pair(cons(X, YS), ZS)) [1] active(c_sel(N, XS)) -> mark(head(afterNth(N, XS))) [1] pair(X1, c_active(X2)) -> pair(X1, X2) [1] U11(X1, X2, c_mark(X3), X4) -> U11(X1, X2, X3, X4) [1] fst(c_mark(X)) -> fst(X) [1] active(c_head(c_cons(N, XS))) -> mark(N) [1] take(X1, c_active(X2)) -> take(X1, X2) [1] splitAt(X1, c_mark(X2)) -> splitAt(X1, X2) [1] splitAt(c_active(X1), X2) -> splitAt(X1, X2) [1] active(c_afterNth(N, XS)) -> mark(snd(splitAt(N, XS))) [1] mark(c_s(X)) -> active(s(mark(X))) [1] mark(c_natsFrom(X)) -> active(natsFrom(mark(X))) [1] U11(X1, c_active(X2), X3, X4) -> U11(X1, X2, X3, X4) [1] active(c_fst(c_pair(X, Y))) -> mark(X) [1] s(c_active(X)) -> s(X) [1] and(c_active(X1), X2) -> and(X1, X2) [1] cons(X1, c_active(X2)) -> cons(X1, X2) [1] mark(c_and(X1, X2)) -> active(and(mark(X1), X2)) [1] mark(c_take(X1, X2)) -> active(take(mark(X1), mark(X2))) [1] U12(X1, c_active(X2)) -> U12(X1, X2) [1] cons(X1, c_mark(X2)) -> cons(X1, X2) [1] U11(c_active(X1), X2, X3, X4) -> U11(X1, X2, X3, X4) [1] afterNth(c_mark(X1), X2) -> afterNth(X1, X2) [1] U11(X1, X2, X3, c_mark(X4)) -> U11(X1, X2, X3, X4) [1] take(X1, c_mark(X2)) -> take(X1, X2) [1] s(c_mark(X)) -> s(X) [1] active(c_take(N, XS)) -> mark(fst(splitAt(N, XS))) [1] mark(c_sel(X1, X2)) -> active(sel(mark(X1), mark(X2))) [1] active(c_tail(c_cons(N, XS))) -> mark(XS) [1] active(c_and(tt, X)) -> mark(X) [1] U12(c_active(X1), X2) -> U12(X1, X2) [1] mark(c_afterNth(X1, X2)) -> active(afterNth(mark(X1), mark(X2))) [1] head(c_mark(X)) -> head(X) [1] cons(c_active(X1), X2) -> cons(X1, X2) [1] mark(c_cons(X1, X2)) -> active(cons(mark(X1), X2)) [1] and(X1, c_mark(X2)) -> and(X1, X2) [1] active(c_splitAt(0, XS)) -> mark(pair(nil, XS)) [1] and(c_mark(X1), X2) -> and(X1, X2) [1] and(X1, c_active(X2)) -> and(X1, X2) [1] encArg(tt) -> tt [0] encArg(0) -> 0 [0] encArg(nil) -> nil [0] encArg(cons_active(x_1)) -> active(encArg(x_1)) [0] encArg(cons_mark(x_1)) -> mark(encArg(x_1)) [0] encArg(cons_U11(x_1, x_2, x_3, x_4)) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encArg(cons_U12(x_1, x_2)) -> U12(encArg(x_1), encArg(x_2)) [0] encArg(cons_splitAt(x_1, x_2)) -> splitAt(encArg(x_1), encArg(x_2)) [0] encArg(cons_pair(x_1, x_2)) -> pair(encArg(x_1), encArg(x_2)) [0] encArg(cons_cons(x_1, x_2)) -> cons(encArg(x_1), encArg(x_2)) [0] encArg(cons_afterNth(x_1, x_2)) -> afterNth(encArg(x_1), encArg(x_2)) [0] encArg(cons_snd(x_1)) -> snd(encArg(x_1)) [0] encArg(cons_and(x_1, x_2)) -> and(encArg(x_1), encArg(x_2)) [0] encArg(cons_fst(x_1)) -> fst(encArg(x_1)) [0] encArg(cons_head(x_1)) -> head(encArg(x_1)) [0] encArg(cons_natsFrom(x_1)) -> natsFrom(encArg(x_1)) [0] encArg(cons_s(x_1)) -> s(encArg(x_1)) [0] encArg(cons_sel(x_1, x_2)) -> sel(encArg(x_1), encArg(x_2)) [0] encArg(cons_tail(x_1)) -> tail(encArg(x_1)) [0] encArg(cons_take(x_1, x_2)) -> take(encArg(x_1), encArg(x_2)) [0] encode_active(x_1) -> active(encArg(x_1)) [0] encode_U11(x_1, x_2, x_3, x_4) -> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) [0] encode_tt -> tt [0] encode_mark(x_1) -> mark(encArg(x_1)) [0] encode_U12(x_1, x_2) -> U12(encArg(x_1), encArg(x_2)) [0] encode_splitAt(x_1, x_2) -> splitAt(encArg(x_1), encArg(x_2)) [0] encode_pair(x_1, x_2) -> pair(encArg(x_1), encArg(x_2)) [0] encode_cons(x_1, x_2) -> cons(encArg(x_1), encArg(x_2)) [0] encode_afterNth(x_1, x_2) -> afterNth(encArg(x_1), encArg(x_2)) [0] encode_snd(x_1) -> snd(encArg(x_1)) [0] encode_and(x_1, x_2) -> and(encArg(x_1), encArg(x_2)) [0] encode_fst(x_1) -> fst(encArg(x_1)) [0] encode_head(x_1) -> head(encArg(x_1)) [0] encode_natsFrom(x_1) -> natsFrom(encArg(x_1)) [0] encode_s(x_1) -> s(encArg(x_1)) [0] encode_sel(x_1, x_2) -> sel(encArg(x_1), encArg(x_2)) [0] encode_0 -> 0 [0] encode_nil -> nil [0] encode_tail(x_1) -> tail(encArg(x_1)) [0] encode_take(x_1, x_2) -> take(encArg(x_1), encArg(x_2)) [0] U12(x0, x1) -> c_U12(x0, x1) [0] head(x0) -> c_head(x0) [0] afterNth(x0, x1) -> c_afterNth(x0, x1) [0] sel(x0, x1) -> c_sel(x0, x1) [0] and(x0, x1) -> c_and(x0, x1) [0] U11(x0, x1, x2, x3) -> c_U11(x0, x1, x2, x3) [0] tail(x0) -> c_tail(x0) [0] s(x0) -> c_s(x0) [0] active(x0) -> c_active(x0) [0] splitAt(x0, x1) -> c_splitAt(x0, x1) [0] fst(x0) -> c_fst(x0) [0] take(x0, x1) -> c_take(x0, x1) [0] snd(x0) -> c_snd(x0) [0] cons(x0, x1) -> c_cons(x0, x1) [0] pair(x0, x1) -> c_pair(x0, x1) [0] natsFrom(x0) -> c_natsFrom(x0) [0] mark(x0) -> c_mark(x0) [0] encArg(v0) -> null_encArg [0] encode_active(v0) -> null_encode_active [0] encode_U11(v0, v1, v2, v3) -> null_encode_U11 [0] encode_tt -> null_encode_tt [0] encode_mark(v0) -> null_encode_mark [0] encode_U12(v0, v1) -> null_encode_U12 [0] encode_splitAt(v0, v1) -> null_encode_splitAt [0] encode_pair(v0, v1) -> null_encode_pair [0] encode_cons(v0, v1) -> null_encode_cons [0] encode_afterNth(v0, v1) -> null_encode_afterNth [0] encode_snd(v0) -> null_encode_snd [0] encode_and(v0, v1) -> null_encode_and [0] encode_fst(v0) -> null_encode_fst [0] encode_head(v0) -> null_encode_head [0] encode_natsFrom(v0) -> null_encode_natsFrom [0] encode_s(v0) -> null_encode_s [0] encode_sel(v0, v1) -> null_encode_sel [0] encode_0 -> null_encode_0 [0] encode_nil -> null_encode_nil [0] encode_tail(v0) -> null_encode_tail [0] encode_take(v0, v1) -> null_encode_take [0] U12(v0, v1) -> null_U12 [0] head(v0) -> null_head [0] afterNth(v0, v1) -> null_afterNth [0] sel(v0, v1) -> null_sel [0] and(v0, v1) -> null_and [0] U11(v0, v1, v2, v3) -> null_U11 [0] tail(v0) -> null_tail [0] s(v0) -> null_s [0] active(v0) -> null_active [0] splitAt(v0, v1) -> null_splitAt [0] fst(v0) -> null_fst [0] take(v0, v1) -> null_take [0] snd(v0) -> null_snd [0] cons(v0, v1) -> null_cons [0] pair(v0, v1) -> null_pair [0] natsFrom(v0) -> null_natsFrom [0] mark(v0) -> null_mark [0] The TRS has the following type information: mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark tt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark 0 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark nil :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark c_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encArg :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark cons_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_tt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_0 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_nil :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark encode_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark -> tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encArg :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_tt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_0 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_nil :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_encode_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_U12 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_head :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_afterNth :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_sel :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_and :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_U11 :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_tail :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_s :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_active :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_splitAt :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_fst :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_take :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_snd :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_cons :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_pair :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_natsFrom :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark null_mark :: tt:0:nil:c_active:c_head:c_mark:c_snd:c_tail:c_pair:c_U11:c_natsFrom:c_U12:c_s:c_cons:c_splitAt:c_fst:c_sel:c_afterNth:c_and:c_take:cons_active:cons_mark:cons_U11:cons_U12:cons_splitAt:cons_pair:cons_cons:cons_afterNth:cons_snd:cons_and:cons_fst:cons_head:cons_natsFrom:cons_s:cons_sel:cons_tail:cons_take:null_encArg:null_encode_active:null_encode_U11:null_encode_tt:null_encode_mark:null_encode_U12:null_encode_splitAt:null_encode_pair:null_encode_cons:null_encode_afterNth:null_encode_snd:null_encode_and:null_encode_fst:null_encode_head:null_encode_natsFrom:null_encode_s:null_encode_sel:null_encode_0:null_encode_nil:null_encode_tail:null_encode_take:null_U12:null_head:null_afterNth:null_sel:null_and:null_U11:null_tail:null_s:null_active:null_splitAt:null_fst:null_take:null_snd:null_cons:null_pair:null_natsFrom:null_mark Rewrite Strategy: INNERMOST ---------------------------------------- (25) CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID)) Transformed the TRS into an over-approximating RNTS by (improved) Size Abstraction. The constant constructors are abstracted as follows: tt => 2 0 => 0 nil => 1 null_encArg => 0 null_encode_active => 0 null_encode_U11 => 0 null_encode_tt => 0 null_encode_mark => 0 null_encode_U12 => 0 null_encode_splitAt => 0 null_encode_pair => 0 null_encode_cons => 0 null_encode_afterNth => 0 null_encode_snd => 0 null_encode_and => 0 null_encode_fst => 0 null_encode_head => 0 null_encode_natsFrom => 0 null_encode_s => 0 null_encode_sel => 0 null_encode_0 => 0 null_encode_nil => 0 null_encode_tail => 0 null_encode_take => 0 null_U12 => 0 null_head => 0 null_afterNth => 0 null_sel => 0 null_and => 0 null_U11 => 0 null_tail => 0 null_s => 0 null_active => 0 null_splitAt => 0 null_fst => 0 null_take => 0 null_snd => 0 null_cons => 0 null_pair => 0 null_natsFrom => 0 null_mark => 0 ---------------------------------------- (26) Obligation: Complexity RNTS consisting of the following rules: U11(z, z', z'', z1) -{ 1 }-> U11(X1, X2, X3, X4) :|: z1 = 1 + X4, X1 >= 0, X3 >= 0, X2 >= 0, X4 >= 0, z = X1, z' = X2, z'' = X3 U11(z, z', z'', z1) -{ 1 }-> U11(X1, X2, X3, X4) :|: X1 >= 0, z1 = X4, z = 1 + X1, X3 >= 0, X2 >= 0, X4 >= 0, z' = X2, z'' = X3 U11(z, z', z'', z1) -{ 1 }-> U11(X1, X2, X3, X4) :|: X1 >= 0, z1 = X4, X3 >= 0, z' = 1 + X2, X2 >= 0, X4 >= 0, z = X1, z'' = X3 U11(z, z', z'', z1) -{ 1 }-> U11(X1, X2, X3, X4) :|: X1 >= 0, z1 = X4, X3 >= 0, X2 >= 0, X4 >= 0, z = X1, z' = X2, z'' = 1 + X3 U11(z, z', z'', z1) -{ 0 }-> 0 :|: z1 = v3, v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0, v3 >= 0 U11(z, z', z'', z1) -{ 0 }-> 1 + x0 + x1 + x2 + x3 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1, z1 = x3, z'' = x2, x2 >= 0, x3 >= 0 U12(z, z') -{ 1 }-> U12(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 U12(z, z') -{ 1 }-> U12(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 U12(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 U12(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 active(z) -{ 1 }-> mark(N) :|: z = 1 + (1 + N + XS), XS >= 0, N >= 0 active(z) -{ 1 }-> mark(X) :|: z = 1 + (1 + X + Y), Y >= 0, X >= 0 active(z) -{ 1 }-> mark(X) :|: z = 1 + 2 + X, X >= 0 active(z) -{ 1 }-> mark(XS) :|: z = 1 + (1 + N + XS), XS >= 0, N >= 0 active(z) -{ 1 }-> mark(Y) :|: z = 1 + (1 + X + Y), Y >= 0, X >= 0 active(z) -{ 1 }-> mark(snd(splitAt(N, XS))) :|: z = 1 + N + XS, XS >= 0, N >= 0 active(z) -{ 1 }-> mark(pair(cons(X, YS), ZS)) :|: YS >= 0, X >= 0, z = 1 + (1 + YS + ZS) + X, ZS >= 0 active(z) -{ 1 }-> mark(pair(1, XS)) :|: z = 1 + 0 + XS, XS >= 0 active(z) -{ 1 }-> mark(head(afterNth(N, XS))) :|: z = 1 + N + XS, XS >= 0, N >= 0 active(z) -{ 1 }-> mark(fst(splitAt(N, XS))) :|: z = 1 + N + XS, XS >= 0, N >= 0 active(z) -{ 1 }-> mark(cons(N, natsFrom(s(N)))) :|: z = 1 + N, N >= 0 active(z) -{ 1 }-> mark(U12(splitAt(N, XS), X)) :|: z = 1 + 2 + N + X + XS, X >= 0, XS >= 0, N >= 0 active(z) -{ 1 }-> mark(U11(2, N, X, XS)) :|: X >= 0, z = 1 + (1 + N) + (1 + X + XS), XS >= 0, N >= 0 active(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 active(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 afterNth(z, z') -{ 1 }-> afterNth(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 afterNth(z, z') -{ 1 }-> afterNth(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 afterNth(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 afterNth(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 and(z, z') -{ 1 }-> and(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 and(z, z') -{ 1 }-> and(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 and(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 and(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 cons(z, z') -{ 1 }-> cons(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 cons(z, z') -{ 1 }-> cons(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 cons(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 cons(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 encArg(z) -{ 0 }-> take(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> tail(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> splitAt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> snd(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> sel(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> s(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> pair(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> natsFrom(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> mark(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> head(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> fst(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> cons(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> and(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> afterNth(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> active(encArg(x_1)) :|: z = 1 + x_1, x_1 >= 0 encArg(z) -{ 0 }-> U12(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, z = 1 + x_1 + x_2, x_2 >= 0 encArg(z) -{ 0 }-> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) :|: x_1 >= 0, x_3 >= 0, x_2 >= 0, z = 1 + x_1 + x_2 + x_3 + x_4, x_4 >= 0 encArg(z) -{ 0 }-> 2 :|: z = 2 encArg(z) -{ 0 }-> 1 :|: z = 1 encArg(z) -{ 0 }-> 0 :|: z = 0 encArg(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_0 -{ 0 }-> 0 :|: encode_U11(z, z', z'', z1) -{ 0 }-> U11(encArg(x_1), encArg(x_2), encArg(x_3), encArg(x_4)) :|: x_1 >= 0, z1 = x_4, x_3 >= 0, x_2 >= 0, z = x_1, z' = x_2, z'' = x_3, x_4 >= 0 encode_U11(z, z', z'', z1) -{ 0 }-> 0 :|: z1 = v3, v0 >= 0, z'' = v2, v1 >= 0, z = v0, z' = v1, v2 >= 0, v3 >= 0 encode_U12(z, z') -{ 0 }-> U12(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_U12(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_active(z) -{ 0 }-> active(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_active(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_afterNth(z, z') -{ 0 }-> afterNth(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_afterNth(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_and(z, z') -{ 0 }-> and(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_and(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_cons(z, z') -{ 0 }-> cons(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_cons(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_fst(z) -{ 0 }-> fst(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_fst(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_head(z) -{ 0 }-> head(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_head(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_mark(z) -{ 0 }-> mark(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_mark(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_natsFrom(z) -{ 0 }-> natsFrom(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_natsFrom(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_nil -{ 0 }-> 1 :|: encode_nil -{ 0 }-> 0 :|: encode_pair(z, z') -{ 0 }-> pair(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_pair(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_s(z) -{ 0 }-> s(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_sel(z, z') -{ 0 }-> sel(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_sel(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_snd(z) -{ 0 }-> snd(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_snd(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_splitAt(z, z') -{ 0 }-> splitAt(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_splitAt(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_tail(z) -{ 0 }-> tail(encArg(x_1)) :|: x_1 >= 0, z = x_1 encode_tail(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 encode_take(z, z') -{ 0 }-> take(encArg(x_1), encArg(x_2)) :|: x_1 >= 0, x_2 >= 0, z = x_1, z' = x_2 encode_take(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 encode_tt -{ 0 }-> 2 :|: encode_tt -{ 0 }-> 0 :|: fst(z) -{ 1 }-> fst(X) :|: z = 1 + X, X >= 0 fst(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 fst(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 head(z) -{ 1 }-> head(X) :|: z = 1 + X, X >= 0 head(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 head(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 mark(z) -{ 1 }-> active(take(mark(X1), mark(X2))) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(tail(mark(X))) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(splitAt(mark(X1), mark(X2))) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(snd(mark(X))) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(sel(mark(X1), mark(X2))) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(s(mark(X))) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(pair(mark(X1), mark(X2))) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(natsFrom(mark(X))) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(head(mark(X))) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(fst(mark(X))) :|: z = 1 + X, X >= 0 mark(z) -{ 1 }-> active(cons(mark(X1), X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(and(mark(X1), X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(afterNth(mark(X1), mark(X2))) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(U12(mark(X1), X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2 mark(z) -{ 1 }-> active(U11(mark(X1), X2, X3, X4)) :|: X1 >= 0, z = 1 + X1 + X2 + X3 + X4, X3 >= 0, X2 >= 0, X4 >= 0 mark(z) -{ 1 }-> active(2) :|: z = 2 mark(z) -{ 1 }-> active(1) :|: z = 1 mark(z) -{ 1 }-> active(0) :|: z = 0 mark(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 mark(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 natsFrom(z) -{ 1 }-> natsFrom(X) :|: z = 1 + X, X >= 0 natsFrom(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 natsFrom(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 pair(z, z') -{ 1 }-> pair(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 pair(z, z') -{ 1 }-> pair(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 pair(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 pair(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 s(z) -{ 1 }-> s(X) :|: z = 1 + X, X >= 0 s(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 s(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 sel(z, z') -{ 1 }-> sel(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 sel(z, z') -{ 1 }-> sel(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 sel(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 sel(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 snd(z) -{ 1 }-> snd(X) :|: z = 1 + X, X >= 0 snd(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 snd(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 splitAt(z, z') -{ 1 }-> splitAt(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 splitAt(z, z') -{ 1 }-> splitAt(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 splitAt(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 splitAt(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 tail(z) -{ 1 }-> tail(X) :|: z = 1 + X, X >= 0 tail(z) -{ 0 }-> 0 :|: v0 >= 0, z = v0 tail(z) -{ 0 }-> 1 + x0 :|: z = x0, x0 >= 0 take(z, z') -{ 1 }-> take(X1, X2) :|: X1 >= 0, z = 1 + X1, X2 >= 0, z' = X2 take(z, z') -{ 1 }-> take(X1, X2) :|: X1 >= 0, z' = 1 + X2, X2 >= 0, z = X1 take(z, z') -{ 0 }-> 0 :|: v0 >= 0, v1 >= 0, z = v0, z' = v1 take(z, z') -{ 0 }-> 1 + x0 + x1 :|: z = x0, x0 >= 0, x1 >= 0, z' = x1 Only complete derivations are relevant for the runtime complexity. ---------------------------------------- (27) CpxTrsToCdtProof (UPPER BOUND(ID)) Converted Cpx (relative) TRS to CDT ---------------------------------------- (28) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encode_active(z0) -> active(encArg(z0)) encode_U11(z0, z1, z2, z3) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_tt -> tt encode_mark(z0) -> mark(encArg(z0)) encode_U12(z0, z1) -> U12(encArg(z0), encArg(z1)) encode_splitAt(z0, z1) -> splitAt(encArg(z0), encArg(z1)) encode_pair(z0, z1) -> pair(encArg(z0), encArg(z1)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_afterNth(z0, z1) -> afterNth(encArg(z0), encArg(z1)) encode_snd(z0) -> snd(encArg(z0)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_fst(z0) -> fst(encArg(z0)) encode_head(z0) -> head(encArg(z0)) encode_natsFrom(z0) -> natsFrom(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_sel(z0, z1) -> sel(encArg(z0), encArg(z1)) encode_0 -> 0 encode_nil -> nil encode_tail(z0) -> tail(encArg(z0)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(tt) -> c ENCARG(0) -> c1 ENCARG(nil) -> c2 ENCARG(cons_active(z0)) -> c3(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c4(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_ACTIVE(z0) -> c20(ACTIVE(encArg(z0)), ENCARG(z0)) ENCODE_U11(z0, z1, z2, z3) -> c21(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCODE_TT -> c22 ENCODE_MARK(z0) -> c23(MARK(encArg(z0)), ENCARG(z0)) ENCODE_U12(z0, z1) -> c24(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_SPLITAT(z0, z1) -> c25(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_PAIR(z0, z1) -> c26(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_CONS(z0, z1) -> c27(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_AFTERNTH(z0, z1) -> c28(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_SND(z0) -> c29(SND(encArg(z0)), ENCARG(z0)) ENCODE_AND(z0, z1) -> c30(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_FST(z0) -> c31(FST(encArg(z0)), ENCARG(z0)) ENCODE_HEAD(z0) -> c32(HEAD(encArg(z0)), ENCARG(z0)) ENCODE_NATSFROM(z0) -> c33(NATSFROM(encArg(z0)), ENCARG(z0)) ENCODE_S(z0) -> c34(S(encArg(z0)), ENCARG(z0)) ENCODE_SEL(z0, z1) -> c35(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_0 -> c36 ENCODE_NIL -> c37 ENCODE_TAIL(z0) -> c38(TAIL(encArg(z0)), ENCARG(z0)) ENCODE_TAKE(z0, z1) -> c39(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SND(splitAt(z0, z1)), SPLITAT(z0, z1)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), CONS(z0, natsFrom(s(z0))), NATSFROM(s(z0)), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), HEAD(afterNth(z0, z1)), AFTERNTH(z0, z1)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), FST(splitAt(z0, z1)), SPLITAT(z0, z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(tt) -> c54(ACTIVE(tt)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(0) -> c67(ACTIVE(0)) MARK(nil) -> c68(ACTIVE(nil)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SND(splitAt(z0, z1)), SPLITAT(z0, z1)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), CONS(z0, natsFrom(s(z0))), NATSFROM(s(z0)), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), HEAD(afterNth(z0, z1)), AFTERNTH(z0, z1)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), FST(splitAt(z0, z1)), SPLITAT(z0, z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(tt) -> c54(ACTIVE(tt)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(0) -> c67(ACTIVE(0)) MARK(nil) -> c68(ACTIVE(nil)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) K tuples:none Defined Rule Symbols: active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2, encArg_1, encode_active_1, encode_U11_4, encode_tt, encode_mark_1, encode_U12_2, encode_splitAt_2, encode_pair_2, encode_cons_2, encode_afterNth_2, encode_snd_1, encode_and_2, encode_fst_1, encode_head_1, encode_natsFrom_1, encode_s_1, encode_sel_2, encode_0, encode_nil, encode_tail_1, encode_take_2 Defined Pair Symbols: ENCARG_1, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_TT, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_0, ENCODE_NIL, ENCODE_TAIL_1, ENCODE_TAKE_2, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2 Compound Symbols: c, c1, c2, c3_2, c4_2, c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c20_2, c21_5, c22, c23_2, c24_3, c25_3, c26_3, c27_3, c28_3, c29_2, c30_3, c31_2, c32_2, c33_2, c34_2, c35_3, c36, c37, c38_2, c39_3, c40_3, c41_3, c42_3, c43_1, c44_1, c45_1, c46_4, c47_3, c48_1, c49_2, c50_2, c51_1, c52_3, c53_3, c54_1, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c67_1, c68_1, c69_3, c70_4, 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 ---------------------------------------- (29) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing nodes: ENCARG(tt) -> c ENCARG(0) -> c1 ENCARG(nil) -> c2 ENCODE_NIL -> c37 ENCODE_TT -> c22 ENCODE_0 -> c36 ---------------------------------------- (30) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encode_active(z0) -> active(encArg(z0)) encode_U11(z0, z1, z2, z3) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_tt -> tt encode_mark(z0) -> mark(encArg(z0)) encode_U12(z0, z1) -> U12(encArg(z0), encArg(z1)) encode_splitAt(z0, z1) -> splitAt(encArg(z0), encArg(z1)) encode_pair(z0, z1) -> pair(encArg(z0), encArg(z1)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_afterNth(z0, z1) -> afterNth(encArg(z0), encArg(z1)) encode_snd(z0) -> snd(encArg(z0)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_fst(z0) -> fst(encArg(z0)) encode_head(z0) -> head(encArg(z0)) encode_natsFrom(z0) -> natsFrom(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_sel(z0, z1) -> sel(encArg(z0), encArg(z1)) encode_0 -> 0 encode_nil -> nil encode_tail(z0) -> tail(encArg(z0)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_active(z0)) -> c3(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c4(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_ACTIVE(z0) -> c20(ACTIVE(encArg(z0)), ENCARG(z0)) ENCODE_U11(z0, z1, z2, z3) -> c21(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCODE_MARK(z0) -> c23(MARK(encArg(z0)), ENCARG(z0)) ENCODE_U12(z0, z1) -> c24(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_SPLITAT(z0, z1) -> c25(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_PAIR(z0, z1) -> c26(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_CONS(z0, z1) -> c27(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_AFTERNTH(z0, z1) -> c28(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_SND(z0) -> c29(SND(encArg(z0)), ENCARG(z0)) ENCODE_AND(z0, z1) -> c30(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_FST(z0) -> c31(FST(encArg(z0)), ENCARG(z0)) ENCODE_HEAD(z0) -> c32(HEAD(encArg(z0)), ENCARG(z0)) ENCODE_NATSFROM(z0) -> c33(NATSFROM(encArg(z0)), ENCARG(z0)) ENCODE_S(z0) -> c34(S(encArg(z0)), ENCARG(z0)) ENCODE_SEL(z0, z1) -> c35(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_TAIL(z0) -> c38(TAIL(encArg(z0)), ENCARG(z0)) ENCODE_TAKE(z0, z1) -> c39(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SND(splitAt(z0, z1)), SPLITAT(z0, z1)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), CONS(z0, natsFrom(s(z0))), NATSFROM(s(z0)), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), HEAD(afterNth(z0, z1)), AFTERNTH(z0, z1)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), FST(splitAt(z0, z1)), SPLITAT(z0, z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(tt) -> c54(ACTIVE(tt)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(0) -> c67(ACTIVE(0)) MARK(nil) -> c68(ACTIVE(nil)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SND(splitAt(z0, z1)), SPLITAT(z0, z1)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), CONS(z0, natsFrom(s(z0))), NATSFROM(s(z0)), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), HEAD(afterNth(z0, z1)), AFTERNTH(z0, z1)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), FST(splitAt(z0, z1)), SPLITAT(z0, z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(tt) -> c54(ACTIVE(tt)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(0) -> c67(ACTIVE(0)) MARK(nil) -> c68(ACTIVE(nil)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) K tuples:none Defined Rule Symbols: active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2, encArg_1, encode_active_1, encode_U11_4, encode_tt, encode_mark_1, encode_U12_2, encode_splitAt_2, encode_pair_2, encode_cons_2, encode_afterNth_2, encode_snd_1, encode_and_2, encode_fst_1, encode_head_1, encode_natsFrom_1, encode_s_1, encode_sel_2, encode_0, encode_nil, encode_tail_1, encode_take_2 Defined Pair Symbols: ENCARG_1, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2 Compound Symbols: c3_2, c4_2, c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c20_2, c21_5, c23_2, c24_3, c25_3, c26_3, c27_3, c28_3, c29_2, c30_3, c31_2, c32_2, c33_2, c34_2, c35_3, c38_2, c39_3, c40_3, c41_3, c42_3, c43_1, c44_1, c45_1, c46_4, c47_3, c48_1, c49_2, c50_2, c51_1, c52_3, c53_3, c54_1, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c67_1, c68_1, c69_3, c70_4, 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 ---------------------------------------- (31) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 8 trailing tuple parts ---------------------------------------- (32) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encode_active(z0) -> active(encArg(z0)) encode_U11(z0, z1, z2, z3) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_tt -> tt encode_mark(z0) -> mark(encArg(z0)) encode_U12(z0, z1) -> U12(encArg(z0), encArg(z1)) encode_splitAt(z0, z1) -> splitAt(encArg(z0), encArg(z1)) encode_pair(z0, z1) -> pair(encArg(z0), encArg(z1)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_afterNth(z0, z1) -> afterNth(encArg(z0), encArg(z1)) encode_snd(z0) -> snd(encArg(z0)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_fst(z0) -> fst(encArg(z0)) encode_head(z0) -> head(encArg(z0)) encode_natsFrom(z0) -> natsFrom(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_sel(z0, z1) -> sel(encArg(z0), encArg(z1)) encode_0 -> 0 encode_nil -> nil encode_tail(z0) -> tail(encArg(z0)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_active(z0)) -> c3(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c4(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_ACTIVE(z0) -> c20(ACTIVE(encArg(z0)), ENCARG(z0)) ENCODE_U11(z0, z1, z2, z3) -> c21(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCODE_MARK(z0) -> c23(MARK(encArg(z0)), ENCARG(z0)) ENCODE_U12(z0, z1) -> c24(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_SPLITAT(z0, z1) -> c25(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_PAIR(z0, z1) -> c26(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_CONS(z0, z1) -> c27(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_AFTERNTH(z0, z1) -> c28(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_SND(z0) -> c29(SND(encArg(z0)), ENCARG(z0)) ENCODE_AND(z0, z1) -> c30(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_FST(z0) -> c31(FST(encArg(z0)), ENCARG(z0)) ENCODE_HEAD(z0) -> c32(HEAD(encArg(z0)), ENCARG(z0)) ENCODE_NATSFROM(z0) -> c33(NATSFROM(encArg(z0)), ENCARG(z0)) ENCODE_S(z0) -> c34(S(encArg(z0)), ENCARG(z0)) ENCODE_SEL(z0, z1) -> c35(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCODE_TAIL(z0) -> c38(TAIL(encArg(z0)), ENCARG(z0)) ENCODE_TAKE(z0, z1) -> c39(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2, encArg_1, encode_active_1, encode_U11_4, encode_tt, encode_mark_1, encode_U12_2, encode_splitAt_2, encode_pair_2, encode_cons_2, encode_afterNth_2, encode_snd_1, encode_and_2, encode_fst_1, encode_head_1, encode_natsFrom_1, encode_s_1, encode_sel_2, encode_0, encode_nil, encode_tail_1, encode_take_2 Defined Pair Symbols: ENCARG_1, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2 Compound Symbols: c3_2, c4_2, c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c20_2, c21_5, c23_2, c24_3, c25_3, c26_3, c27_3, c28_3, c29_2, c30_3, c31_2, c32_2, c33_2, c34_2, c35_3, c38_2, c39_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68 ---------------------------------------- (33) CdtGraphSplitRhsProof (BOTH BOUNDS(ID, ID)) Split RHS of tuples not part of any SCC ---------------------------------------- (34) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encode_active(z0) -> active(encArg(z0)) encode_U11(z0, z1, z2, z3) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_tt -> tt encode_mark(z0) -> mark(encArg(z0)) encode_U12(z0, z1) -> U12(encArg(z0), encArg(z1)) encode_splitAt(z0, z1) -> splitAt(encArg(z0), encArg(z1)) encode_pair(z0, z1) -> pair(encArg(z0), encArg(z1)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_afterNth(z0, z1) -> afterNth(encArg(z0), encArg(z1)) encode_snd(z0) -> snd(encArg(z0)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_fst(z0) -> fst(encArg(z0)) encode_head(z0) -> head(encArg(z0)) encode_natsFrom(z0) -> natsFrom(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_sel(z0, z1) -> sel(encArg(z0), encArg(z1)) encode_0 -> 0 encode_nil -> nil encode_tail(z0) -> tail(encArg(z0)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_active(z0)) -> c3(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c4(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_ACTIVE(z0) -> c(ENCARG(z0)) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_U11(z0, z1, z2, z3) -> c(ENCARG(z0)) ENCODE_U11(z0, z1, z2, z3) -> c(ENCARG(z1)) ENCODE_U11(z0, z1, z2, z3) -> c(ENCARG(z2)) ENCODE_U11(z0, z1, z2, z3) -> c(ENCARG(z3)) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_MARK(z0) -> c(ENCARG(z0)) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_U12(z0, z1) -> c(ENCARG(z0)) ENCODE_U12(z0, z1) -> c(ENCARG(z1)) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(ENCARG(z0)) ENCODE_SPLITAT(z0, z1) -> c(ENCARG(z1)) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(ENCARG(z0)) ENCODE_PAIR(z0, z1) -> c(ENCARG(z1)) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(ENCARG(z0)) ENCODE_CONS(z0, z1) -> c(ENCARG(z1)) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(ENCARG(z0)) ENCODE_AFTERNTH(z0, z1) -> c(ENCARG(z1)) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_SND(z0) -> c(ENCARG(z0)) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_AND(z0, z1) -> c(ENCARG(z0)) ENCODE_AND(z0, z1) -> c(ENCARG(z1)) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_FST(z0) -> c(ENCARG(z0)) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_HEAD(z0) -> c(ENCARG(z0)) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_NATSFROM(z0) -> c(ENCARG(z0)) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_S(z0) -> c(ENCARG(z0)) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_SEL(z0, z1) -> c(ENCARG(z0)) ENCODE_SEL(z0, z1) -> c(ENCARG(z1)) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAIL(z0) -> c(ENCARG(z0)) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCODE_TAKE(z0, z1) -> c(ENCARG(z0)) ENCODE_TAKE(z0, z1) -> c(ENCARG(z1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2, encArg_1, encode_active_1, encode_U11_4, encode_tt, encode_mark_1, encode_U12_2, encode_splitAt_2, encode_pair_2, encode_cons_2, encode_afterNth_2, encode_snd_1, encode_and_2, encode_fst_1, encode_head_1, encode_natsFrom_1, encode_s_1, encode_sel_2, encode_0, encode_nil, encode_tail_1, encode_take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c3_2, c4_2, c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1 ---------------------------------------- (35) CdtLeafRemovalProof (ComplexityIfPolyImplication) Removed 28 leading nodes: ENCODE_ACTIVE(z0) -> c(ENCARG(z0)) ENCODE_U11(z0, z1, z2, z3) -> c(ENCARG(z0)) ENCODE_U11(z0, z1, z2, z3) -> c(ENCARG(z1)) ENCODE_U11(z0, z1, z2, z3) -> c(ENCARG(z2)) ENCODE_U11(z0, z1, z2, z3) -> c(ENCARG(z3)) ENCODE_MARK(z0) -> c(ENCARG(z0)) ENCODE_U12(z0, z1) -> c(ENCARG(z0)) ENCODE_U12(z0, z1) -> c(ENCARG(z1)) ENCODE_SPLITAT(z0, z1) -> c(ENCARG(z0)) ENCODE_SPLITAT(z0, z1) -> c(ENCARG(z1)) ENCODE_PAIR(z0, z1) -> c(ENCARG(z0)) ENCODE_PAIR(z0, z1) -> c(ENCARG(z1)) ENCODE_CONS(z0, z1) -> c(ENCARG(z0)) ENCODE_CONS(z0, z1) -> c(ENCARG(z1)) ENCODE_AFTERNTH(z0, z1) -> c(ENCARG(z0)) ENCODE_AFTERNTH(z0, z1) -> c(ENCARG(z1)) ENCODE_SND(z0) -> c(ENCARG(z0)) ENCODE_AND(z0, z1) -> c(ENCARG(z0)) ENCODE_AND(z0, z1) -> c(ENCARG(z1)) ENCODE_FST(z0) -> c(ENCARG(z0)) ENCODE_HEAD(z0) -> c(ENCARG(z0)) ENCODE_NATSFROM(z0) -> c(ENCARG(z0)) ENCODE_S(z0) -> c(ENCARG(z0)) ENCODE_SEL(z0, z1) -> c(ENCARG(z0)) ENCODE_SEL(z0, z1) -> c(ENCARG(z1)) ENCODE_TAIL(z0) -> c(ENCARG(z0)) ENCODE_TAKE(z0, z1) -> c(ENCARG(z0)) ENCODE_TAKE(z0, z1) -> c(ENCARG(z1)) ---------------------------------------- (36) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) encode_active(z0) -> active(encArg(z0)) encode_U11(z0, z1, z2, z3) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_tt -> tt encode_mark(z0) -> mark(encArg(z0)) encode_U12(z0, z1) -> U12(encArg(z0), encArg(z1)) encode_splitAt(z0, z1) -> splitAt(encArg(z0), encArg(z1)) encode_pair(z0, z1) -> pair(encArg(z0), encArg(z1)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_afterNth(z0, z1) -> afterNth(encArg(z0), encArg(z1)) encode_snd(z0) -> snd(encArg(z0)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_fst(z0) -> fst(encArg(z0)) encode_head(z0) -> head(encArg(z0)) encode_natsFrom(z0) -> natsFrom(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_sel(z0, z1) -> sel(encArg(z0), encArg(z1)) encode_0 -> 0 encode_nil -> nil encode_tail(z0) -> tail(encArg(z0)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_active(z0)) -> c3(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c4(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2, encArg_1, encode_active_1, encode_U11_4, encode_tt, encode_mark_1, encode_U12_2, encode_splitAt_2, encode_pair_2, encode_cons_2, encode_afterNth_2, encode_snd_1, encode_and_2, encode_fst_1, encode_head_1, encode_natsFrom_1, encode_s_1, encode_sel_2, encode_0, encode_nil, encode_tail_1, encode_take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c3_2, c4_2, c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1 ---------------------------------------- (37) CdtUsableRulesProof (BOTH BOUNDS(ID, ID)) The following rules are not usable and were removed: encode_active(z0) -> active(encArg(z0)) encode_U11(z0, z1, z2, z3) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encode_tt -> tt encode_mark(z0) -> mark(encArg(z0)) encode_U12(z0, z1) -> U12(encArg(z0), encArg(z1)) encode_splitAt(z0, z1) -> splitAt(encArg(z0), encArg(z1)) encode_pair(z0, z1) -> pair(encArg(z0), encArg(z1)) encode_cons(z0, z1) -> cons(encArg(z0), encArg(z1)) encode_afterNth(z0, z1) -> afterNth(encArg(z0), encArg(z1)) encode_snd(z0) -> snd(encArg(z0)) encode_and(z0, z1) -> and(encArg(z0), encArg(z1)) encode_fst(z0) -> fst(encArg(z0)) encode_head(z0) -> head(encArg(z0)) encode_natsFrom(z0) -> natsFrom(encArg(z0)) encode_s(z0) -> s(encArg(z0)) encode_sel(z0, z1) -> sel(encArg(z0), encArg(z1)) encode_0 -> 0 encode_nil -> nil encode_tail(z0) -> tail(encArg(z0)) encode_take(z0, z1) -> take(encArg(z0), encArg(z1)) ---------------------------------------- (38) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_active(z0)) -> c3(ACTIVE(encArg(z0)), ENCARG(z0)) ENCARG(cons_mark(z0)) -> c4(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c3_2, c4_2, c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1 ---------------------------------------- (39) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_active(z0)) -> c3(ACTIVE(encArg(z0)), ENCARG(z0)) by ENCARG(cons_active(tt)) -> c3(ACTIVE(tt), ENCARG(tt)) ENCARG(cons_active(0)) -> c3(ACTIVE(0), ENCARG(0)) ENCARG(cons_active(nil)) -> c3(ACTIVE(nil), ENCARG(nil)) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ---------------------------------------- (40) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_mark(z0)) -> c4(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(tt)) -> c3(ACTIVE(tt), ENCARG(tt)) ENCARG(cons_active(0)) -> c3(ACTIVE(0), ENCARG(0)) ENCARG(cons_active(nil)) -> c3(ACTIVE(nil), ENCARG(nil)) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c4_2, c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2 ---------------------------------------- (41) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: ENCARG(cons_active(tt)) -> c3(ACTIVE(tt), ENCARG(tt)) ENCARG(cons_active(0)) -> c3(ACTIVE(0), ENCARG(0)) ENCARG(cons_active(nil)) -> c3(ACTIVE(nil), ENCARG(nil)) ---------------------------------------- (42) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_mark(z0)) -> c4(MARK(encArg(z0)), ENCARG(z0)) ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c4_2, c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2 ---------------------------------------- (43) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_mark(z0)) -> c4(MARK(encArg(z0)), ENCARG(z0)) by ENCARG(cons_mark(tt)) -> c4(MARK(tt), ENCARG(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0), ENCARG(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil), ENCARG(nil)) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ---------------------------------------- (44) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt), ENCARG(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0), ENCARG(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil), ENCARG(nil)) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2 ---------------------------------------- (45) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing tuple parts ---------------------------------------- (46) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c5_5, c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1 ---------------------------------------- (47) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_U11(z0, z1, z2, z3)) -> c5(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), ENCARG(z0), ENCARG(z1), ENCARG(z2), ENCARG(z3)) by ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(tt)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(0)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(tt), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(0), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(nil), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(tt), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(nil), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(tt), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(0), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(nil), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ---------------------------------------- (48) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(tt)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(0)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(tt), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(0), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(nil), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(tt), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(nil), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(tt), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(0), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(nil), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5 ---------------------------------------- (49) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 12 trailing tuple parts ---------------------------------------- (50) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c6_3, c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4 ---------------------------------------- (51) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_U12(z0, z1)) -> c6(U12'(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ---------------------------------------- (52) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3 ---------------------------------------- (53) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (54) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c7_3, c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2 ---------------------------------------- (55) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_splitAt(z0, z1)) -> c7(SPLITAT(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ---------------------------------------- (56) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3 ---------------------------------------- (57) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (58) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c8_3, c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2 ---------------------------------------- (59) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_pair(z0, z1)) -> c8(PAIR(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ---------------------------------------- (60) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3 ---------------------------------------- (61) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (62) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c9_3, c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2 ---------------------------------------- (63) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_cons(z0, z1)) -> c9(CONS(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ---------------------------------------- (64) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3 ---------------------------------------- (65) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (66) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c10_3, c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2 ---------------------------------------- (67) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_afterNth(z0, z1)) -> c10(AFTERNTH(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ---------------------------------------- (68) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3 ---------------------------------------- (69) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (70) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c11_2, c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2 ---------------------------------------- (71) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_snd(z0)) -> c11(SND(encArg(z0)), ENCARG(z0)) by ENCARG(cons_snd(tt)) -> c11(SND(tt), ENCARG(tt)) ENCARG(cons_snd(0)) -> c11(SND(0), ENCARG(0)) ENCARG(cons_snd(nil)) -> c11(SND(nil), ENCARG(nil)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ---------------------------------------- (72) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(tt)) -> c11(SND(tt), ENCARG(tt)) ENCARG(cons_snd(0)) -> c11(SND(0), ENCARG(0)) ENCARG(cons_snd(nil)) -> c11(SND(nil), ENCARG(nil)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2 ---------------------------------------- (73) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: ENCARG(cons_snd(tt)) -> c11(SND(tt), ENCARG(tt)) ENCARG(cons_snd(0)) -> c11(SND(0), ENCARG(0)) ENCARG(cons_snd(nil)) -> c11(SND(nil), ENCARG(nil)) ---------------------------------------- (74) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c12_3, c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2 ---------------------------------------- (75) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_and(z0, z1)) -> c12(AND(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ---------------------------------------- (76) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3 ---------------------------------------- (77) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (78) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c13_2, c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2 ---------------------------------------- (79) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_fst(z0)) -> c13(FST(encArg(z0)), ENCARG(z0)) by ENCARG(cons_fst(tt)) -> c13(FST(tt), ENCARG(tt)) ENCARG(cons_fst(0)) -> c13(FST(0), ENCARG(0)) ENCARG(cons_fst(nil)) -> c13(FST(nil), ENCARG(nil)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ---------------------------------------- (80) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(tt)) -> c13(FST(tt), ENCARG(tt)) ENCARG(cons_fst(0)) -> c13(FST(0), ENCARG(0)) ENCARG(cons_fst(nil)) -> c13(FST(nil), ENCARG(nil)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2 ---------------------------------------- (81) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: ENCARG(cons_fst(nil)) -> c13(FST(nil), ENCARG(nil)) ENCARG(cons_fst(0)) -> c13(FST(0), ENCARG(0)) ENCARG(cons_fst(tt)) -> c13(FST(tt), ENCARG(tt)) ---------------------------------------- (82) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c14_2, c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2 ---------------------------------------- (83) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_head(z0)) -> c14(HEAD(encArg(z0)), ENCARG(z0)) by ENCARG(cons_head(tt)) -> c14(HEAD(tt), ENCARG(tt)) ENCARG(cons_head(0)) -> c14(HEAD(0), ENCARG(0)) ENCARG(cons_head(nil)) -> c14(HEAD(nil), ENCARG(nil)) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ---------------------------------------- (84) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(tt)) -> c14(HEAD(tt), ENCARG(tt)) ENCARG(cons_head(0)) -> c14(HEAD(0), ENCARG(0)) ENCARG(cons_head(nil)) -> c14(HEAD(nil), ENCARG(nil)) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2 ---------------------------------------- (85) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: ENCARG(cons_head(tt)) -> c14(HEAD(tt), ENCARG(tt)) ENCARG(cons_head(0)) -> c14(HEAD(0), ENCARG(0)) ENCARG(cons_head(nil)) -> c14(HEAD(nil), ENCARG(nil)) ---------------------------------------- (86) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c15_2, c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2 ---------------------------------------- (87) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_natsFrom(z0)) -> c15(NATSFROM(encArg(z0)), ENCARG(z0)) by ENCARG(cons_natsFrom(tt)) -> c15(NATSFROM(tt), ENCARG(tt)) ENCARG(cons_natsFrom(0)) -> c15(NATSFROM(0), ENCARG(0)) ENCARG(cons_natsFrom(nil)) -> c15(NATSFROM(nil), ENCARG(nil)) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ---------------------------------------- (88) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(tt)) -> c15(NATSFROM(tt), ENCARG(tt)) ENCARG(cons_natsFrom(0)) -> c15(NATSFROM(0), ENCARG(0)) ENCARG(cons_natsFrom(nil)) -> c15(NATSFROM(nil), ENCARG(nil)) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2 ---------------------------------------- (89) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: ENCARG(cons_natsFrom(nil)) -> c15(NATSFROM(nil), ENCARG(nil)) ENCARG(cons_natsFrom(0)) -> c15(NATSFROM(0), ENCARG(0)) ENCARG(cons_natsFrom(tt)) -> c15(NATSFROM(tt), ENCARG(tt)) ---------------------------------------- (90) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c16_2, c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2 ---------------------------------------- (91) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_s(z0)) -> c16(S(encArg(z0)), ENCARG(z0)) by ENCARG(cons_s(tt)) -> c16(S(tt), ENCARG(tt)) ENCARG(cons_s(0)) -> c16(S(0), ENCARG(0)) ENCARG(cons_s(nil)) -> c16(S(nil), ENCARG(nil)) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ---------------------------------------- (92) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(tt)) -> c16(S(tt), ENCARG(tt)) ENCARG(cons_s(0)) -> c16(S(0), ENCARG(0)) ENCARG(cons_s(nil)) -> c16(S(nil), ENCARG(nil)) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2 ---------------------------------------- (93) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: ENCARG(cons_s(tt)) -> c16(S(tt), ENCARG(tt)) ENCARG(cons_s(nil)) -> c16(S(nil), ENCARG(nil)) ENCARG(cons_s(0)) -> c16(S(0), ENCARG(0)) ---------------------------------------- (94) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c17_3, c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2 ---------------------------------------- (95) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_sel(z0, z1)) -> c17(SEL(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ---------------------------------------- (96) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3 ---------------------------------------- (97) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (98) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c18_2, c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2 ---------------------------------------- (99) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_tail(z0)) -> c18(TAIL(encArg(z0)), ENCARG(z0)) by ENCARG(cons_tail(tt)) -> c18(TAIL(tt), ENCARG(tt)) ENCARG(cons_tail(0)) -> c18(TAIL(0), ENCARG(0)) ENCARG(cons_tail(nil)) -> c18(TAIL(nil), ENCARG(nil)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ---------------------------------------- (100) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(tt)) -> c18(TAIL(tt), ENCARG(tt)) ENCARG(cons_tail(0)) -> c18(TAIL(0), ENCARG(0)) ENCARG(cons_tail(nil)) -> c18(TAIL(nil), ENCARG(nil)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2 ---------------------------------------- (101) CdtLeafRemovalProof (BOTH BOUNDS(ID, ID)) Removed 3 trailing nodes: ENCARG(cons_tail(tt)) -> c18(TAIL(tt), ENCARG(tt)) ENCARG(cons_tail(0)) -> c18(TAIL(0), ENCARG(0)) ENCARG(cons_tail(nil)) -> c18(TAIL(nil), ENCARG(nil)) ---------------------------------------- (102) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ENCARG_1, ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2 Compound Symbols: c19_3, c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2 ---------------------------------------- (103) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace ENCARG(cons_take(z0, z1)) -> c19(TAKE(encArg(z0), encArg(z1)), ENCARG(z0), ENCARG(z1)) by ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ---------------------------------------- (104) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0), ENCARG(tt)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0), ENCARG(0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0), ENCARG(nil)) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(tt), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(0), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(nil), ENCARG(x1)) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ENCARG_1 Compound Symbols: c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2, c19_3 ---------------------------------------- (105) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 6 trailing tuple parts ---------------------------------------- (106) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ENCARG_1 Compound Symbols: c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c53_3, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2, c19_3, c19_2 ---------------------------------------- (107) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(mark(z0), z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) by MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) ---------------------------------------- (108) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(x1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ENCARG_1 Compound Symbols: c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c55_3, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2, c19_3, c19_2, c53_3, c53_1 ---------------------------------------- (109) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(U12(z0, z1)) -> c55(ACTIVE(U12(mark(z0), z1)), U12'(mark(z0), z1), MARK(z0)) by MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) ---------------------------------------- (110) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(x1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ENCARG_1 Compound Symbols: c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c56_4, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2, c19_3, c19_2, c53_3, c53_1, c55_3, c55_1 ---------------------------------------- (111) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(splitAt(z0, z1)) -> c56(ACTIVE(splitAt(mark(z0), mark(z1))), SPLITAT(mark(z0), mark(z1)), MARK(z0), MARK(z1)) by MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) ---------------------------------------- (112) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(x1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ENCARG_1 Compound Symbols: c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c57_4, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2, c19_3, c19_2, c53_3, c53_1, c55_3, c55_1, c56_4 ---------------------------------------- (113) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(pair(z0, z1)) -> c57(ACTIVE(pair(mark(z0), mark(z1))), PAIR(mark(z0), mark(z1)), MARK(z0), MARK(z1)) by MARK(pair(z0, x1)) -> c57(ACTIVE(pair(z0, mark(x1))), PAIR(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(pair(x0, z1)) -> c57(ACTIVE(pair(mark(x0), z1)), PAIR(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(pair(x0, U11(z0, z1, z2, z3))) -> c57(ACTIVE(pair(mark(x0), active(U11(mark(z0), z1, z2, z3)))), PAIR(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(pair(x0, tt)) -> c57(ACTIVE(pair(mark(x0), active(tt))), PAIR(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(pair(x0, U12(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(U12(mark(z0), z1)))), PAIR(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(pair(x0, splitAt(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(splitAt(mark(z0), mark(z1))))), PAIR(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(pair(x0, pair(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(pair(mark(z0), mark(z1))))), PAIR(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(pair(x0, cons(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(cons(mark(z0), z1)))), PAIR(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(pair(x0, afterNth(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(afterNth(mark(z0), mark(z1))))), PAIR(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(pair(x0, snd(z0))) -> c57(ACTIVE(pair(mark(x0), active(snd(mark(z0))))), PAIR(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(pair(x0, and(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(and(mark(z0), z1)))), PAIR(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(pair(x0, fst(z0))) -> c57(ACTIVE(pair(mark(x0), active(fst(mark(z0))))), PAIR(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(pair(x0, head(z0))) -> c57(ACTIVE(pair(mark(x0), active(head(mark(z0))))), PAIR(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(pair(x0, natsFrom(z0))) -> c57(ACTIVE(pair(mark(x0), active(natsFrom(mark(z0))))), PAIR(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(pair(x0, s(z0))) -> c57(ACTIVE(pair(mark(x0), active(s(mark(z0))))), PAIR(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(pair(x0, sel(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(sel(mark(z0), mark(z1))))), PAIR(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(pair(x0, 0)) -> c57(ACTIVE(pair(mark(x0), active(0))), PAIR(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(pair(x0, nil)) -> c57(ACTIVE(pair(mark(x0), active(nil))), PAIR(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(pair(x0, tail(z0))) -> c57(ACTIVE(pair(mark(x0), active(tail(mark(z0))))), PAIR(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(pair(x0, take(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(take(mark(z0), mark(z1))))), PAIR(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(pair(U11(z0, z1, z2, z3), x1)) -> c57(ACTIVE(pair(active(U11(mark(z0), z1, z2, z3)), mark(x1))), PAIR(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(pair(tt, x1)) -> c57(ACTIVE(pair(active(tt), mark(x1))), PAIR(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(pair(U12(z0, z1), x1)) -> c57(ACTIVE(pair(active(U12(mark(z0), z1)), mark(x1))), PAIR(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(pair(splitAt(z0, z1), x1)) -> c57(ACTIVE(pair(active(splitAt(mark(z0), mark(z1))), mark(x1))), PAIR(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(pair(pair(z0, z1), x1)) -> c57(ACTIVE(pair(active(pair(mark(z0), mark(z1))), mark(x1))), PAIR(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(pair(cons(z0, z1), x1)) -> c57(ACTIVE(pair(active(cons(mark(z0), z1)), mark(x1))), PAIR(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(pair(afterNth(z0, z1), x1)) -> c57(ACTIVE(pair(active(afterNth(mark(z0), mark(z1))), mark(x1))), PAIR(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(pair(snd(z0), x1)) -> c57(ACTIVE(pair(active(snd(mark(z0))), mark(x1))), PAIR(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(pair(and(z0, z1), x1)) -> c57(ACTIVE(pair(active(and(mark(z0), z1)), mark(x1))), PAIR(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(pair(fst(z0), x1)) -> c57(ACTIVE(pair(active(fst(mark(z0))), mark(x1))), PAIR(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(pair(head(z0), x1)) -> c57(ACTIVE(pair(active(head(mark(z0))), mark(x1))), PAIR(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(pair(natsFrom(z0), x1)) -> c57(ACTIVE(pair(active(natsFrom(mark(z0))), mark(x1))), PAIR(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(pair(s(z0), x1)) -> c57(ACTIVE(pair(active(s(mark(z0))), mark(x1))), PAIR(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(pair(sel(z0, z1), x1)) -> c57(ACTIVE(pair(active(sel(mark(z0), mark(z1))), mark(x1))), PAIR(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(pair(0, x1)) -> c57(ACTIVE(pair(active(0), mark(x1))), PAIR(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(pair(nil, x1)) -> c57(ACTIVE(pair(active(nil), mark(x1))), PAIR(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(pair(tail(z0), x1)) -> c57(ACTIVE(pair(active(tail(mark(z0))), mark(x1))), PAIR(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(pair(take(z0, z1), x1)) -> c57(ACTIVE(pair(active(take(mark(z0), mark(z1))), mark(x1))), PAIR(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) ---------------------------------------- (114) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(x1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(pair(z0, x1)) -> c57(ACTIVE(pair(z0, mark(x1))), PAIR(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(pair(x0, z1)) -> c57(ACTIVE(pair(mark(x0), z1)), PAIR(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(pair(x0, U11(z0, z1, z2, z3))) -> c57(ACTIVE(pair(mark(x0), active(U11(mark(z0), z1, z2, z3)))), PAIR(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(pair(x0, tt)) -> c57(ACTIVE(pair(mark(x0), active(tt))), PAIR(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(pair(x0, U12(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(U12(mark(z0), z1)))), PAIR(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(pair(x0, splitAt(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(splitAt(mark(z0), mark(z1))))), PAIR(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(pair(x0, pair(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(pair(mark(z0), mark(z1))))), PAIR(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(pair(x0, cons(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(cons(mark(z0), z1)))), PAIR(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(pair(x0, afterNth(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(afterNth(mark(z0), mark(z1))))), PAIR(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(pair(x0, snd(z0))) -> c57(ACTIVE(pair(mark(x0), active(snd(mark(z0))))), PAIR(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(pair(x0, and(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(and(mark(z0), z1)))), PAIR(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(pair(x0, fst(z0))) -> c57(ACTIVE(pair(mark(x0), active(fst(mark(z0))))), PAIR(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(pair(x0, head(z0))) -> c57(ACTIVE(pair(mark(x0), active(head(mark(z0))))), PAIR(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(pair(x0, natsFrom(z0))) -> c57(ACTIVE(pair(mark(x0), active(natsFrom(mark(z0))))), PAIR(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(pair(x0, s(z0))) -> c57(ACTIVE(pair(mark(x0), active(s(mark(z0))))), PAIR(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(pair(x0, sel(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(sel(mark(z0), mark(z1))))), PAIR(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(pair(x0, 0)) -> c57(ACTIVE(pair(mark(x0), active(0))), PAIR(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(pair(x0, nil)) -> c57(ACTIVE(pair(mark(x0), active(nil))), PAIR(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(pair(x0, tail(z0))) -> c57(ACTIVE(pair(mark(x0), active(tail(mark(z0))))), PAIR(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(pair(x0, take(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(take(mark(z0), mark(z1))))), PAIR(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(pair(U11(z0, z1, z2, z3), x1)) -> c57(ACTIVE(pair(active(U11(mark(z0), z1, z2, z3)), mark(x1))), PAIR(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(pair(tt, x1)) -> c57(ACTIVE(pair(active(tt), mark(x1))), PAIR(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(pair(U12(z0, z1), x1)) -> c57(ACTIVE(pair(active(U12(mark(z0), z1)), mark(x1))), PAIR(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(pair(splitAt(z0, z1), x1)) -> c57(ACTIVE(pair(active(splitAt(mark(z0), mark(z1))), mark(x1))), PAIR(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(pair(pair(z0, z1), x1)) -> c57(ACTIVE(pair(active(pair(mark(z0), mark(z1))), mark(x1))), PAIR(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(pair(cons(z0, z1), x1)) -> c57(ACTIVE(pair(active(cons(mark(z0), z1)), mark(x1))), PAIR(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(pair(afterNth(z0, z1), x1)) -> c57(ACTIVE(pair(active(afterNth(mark(z0), mark(z1))), mark(x1))), PAIR(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(pair(snd(z0), x1)) -> c57(ACTIVE(pair(active(snd(mark(z0))), mark(x1))), PAIR(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(pair(and(z0, z1), x1)) -> c57(ACTIVE(pair(active(and(mark(z0), z1)), mark(x1))), PAIR(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(pair(fst(z0), x1)) -> c57(ACTIVE(pair(active(fst(mark(z0))), mark(x1))), PAIR(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(pair(head(z0), x1)) -> c57(ACTIVE(pair(active(head(mark(z0))), mark(x1))), PAIR(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(pair(natsFrom(z0), x1)) -> c57(ACTIVE(pair(active(natsFrom(mark(z0))), mark(x1))), PAIR(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(pair(s(z0), x1)) -> c57(ACTIVE(pair(active(s(mark(z0))), mark(x1))), PAIR(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(pair(sel(z0, z1), x1)) -> c57(ACTIVE(pair(active(sel(mark(z0), mark(z1))), mark(x1))), PAIR(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(pair(0, x1)) -> c57(ACTIVE(pair(active(0), mark(x1))), PAIR(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(pair(nil, x1)) -> c57(ACTIVE(pair(active(nil), mark(x1))), PAIR(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(pair(tail(z0), x1)) -> c57(ACTIVE(pair(active(tail(mark(z0))), mark(x1))), PAIR(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(pair(take(z0, z1), x1)) -> c57(ACTIVE(pair(active(take(mark(z0), mark(z1))), mark(x1))), PAIR(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(pair(z0, x1)) -> c57(ACTIVE(pair(z0, mark(x1))), PAIR(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(pair(x0, z1)) -> c57(ACTIVE(pair(mark(x0), z1)), PAIR(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(pair(x0, U11(z0, z1, z2, z3))) -> c57(ACTIVE(pair(mark(x0), active(U11(mark(z0), z1, z2, z3)))), PAIR(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(pair(x0, tt)) -> c57(ACTIVE(pair(mark(x0), active(tt))), PAIR(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(pair(x0, U12(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(U12(mark(z0), z1)))), PAIR(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(pair(x0, splitAt(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(splitAt(mark(z0), mark(z1))))), PAIR(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(pair(x0, pair(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(pair(mark(z0), mark(z1))))), PAIR(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(pair(x0, cons(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(cons(mark(z0), z1)))), PAIR(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(pair(x0, afterNth(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(afterNth(mark(z0), mark(z1))))), PAIR(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(pair(x0, snd(z0))) -> c57(ACTIVE(pair(mark(x0), active(snd(mark(z0))))), PAIR(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(pair(x0, and(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(and(mark(z0), z1)))), PAIR(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(pair(x0, fst(z0))) -> c57(ACTIVE(pair(mark(x0), active(fst(mark(z0))))), PAIR(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(pair(x0, head(z0))) -> c57(ACTIVE(pair(mark(x0), active(head(mark(z0))))), PAIR(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(pair(x0, natsFrom(z0))) -> c57(ACTIVE(pair(mark(x0), active(natsFrom(mark(z0))))), PAIR(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(pair(x0, s(z0))) -> c57(ACTIVE(pair(mark(x0), active(s(mark(z0))))), PAIR(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(pair(x0, sel(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(sel(mark(z0), mark(z1))))), PAIR(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(pair(x0, 0)) -> c57(ACTIVE(pair(mark(x0), active(0))), PAIR(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(pair(x0, nil)) -> c57(ACTIVE(pair(mark(x0), active(nil))), PAIR(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(pair(x0, tail(z0))) -> c57(ACTIVE(pair(mark(x0), active(tail(mark(z0))))), PAIR(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(pair(x0, take(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(take(mark(z0), mark(z1))))), PAIR(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(pair(U11(z0, z1, z2, z3), x1)) -> c57(ACTIVE(pair(active(U11(mark(z0), z1, z2, z3)), mark(x1))), PAIR(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(pair(tt, x1)) -> c57(ACTIVE(pair(active(tt), mark(x1))), PAIR(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(pair(U12(z0, z1), x1)) -> c57(ACTIVE(pair(active(U12(mark(z0), z1)), mark(x1))), PAIR(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(pair(splitAt(z0, z1), x1)) -> c57(ACTIVE(pair(active(splitAt(mark(z0), mark(z1))), mark(x1))), PAIR(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(pair(pair(z0, z1), x1)) -> c57(ACTIVE(pair(active(pair(mark(z0), mark(z1))), mark(x1))), PAIR(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(pair(cons(z0, z1), x1)) -> c57(ACTIVE(pair(active(cons(mark(z0), z1)), mark(x1))), PAIR(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(pair(afterNth(z0, z1), x1)) -> c57(ACTIVE(pair(active(afterNth(mark(z0), mark(z1))), mark(x1))), PAIR(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(pair(snd(z0), x1)) -> c57(ACTIVE(pair(active(snd(mark(z0))), mark(x1))), PAIR(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(pair(and(z0, z1), x1)) -> c57(ACTIVE(pair(active(and(mark(z0), z1)), mark(x1))), PAIR(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(pair(fst(z0), x1)) -> c57(ACTIVE(pair(active(fst(mark(z0))), mark(x1))), PAIR(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(pair(head(z0), x1)) -> c57(ACTIVE(pair(active(head(mark(z0))), mark(x1))), PAIR(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(pair(natsFrom(z0), x1)) -> c57(ACTIVE(pair(active(natsFrom(mark(z0))), mark(x1))), PAIR(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(pair(s(z0), x1)) -> c57(ACTIVE(pair(active(s(mark(z0))), mark(x1))), PAIR(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(pair(sel(z0, z1), x1)) -> c57(ACTIVE(pair(active(sel(mark(z0), mark(z1))), mark(x1))), PAIR(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(pair(0, x1)) -> c57(ACTIVE(pair(active(0), mark(x1))), PAIR(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(pair(nil, x1)) -> c57(ACTIVE(pair(active(nil), mark(x1))), PAIR(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(pair(tail(z0), x1)) -> c57(ACTIVE(pair(active(tail(mark(z0))), mark(x1))), PAIR(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(pair(take(z0, z1), x1)) -> c57(ACTIVE(pair(active(take(mark(z0), mark(z1))), mark(x1))), PAIR(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ENCARG_1 Compound Symbols: c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c58_3, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2, c19_3, c19_2, c53_3, c53_1, c55_3, c55_1, c56_4, c57_4 ---------------------------------------- (115) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(cons(z0, z1)) -> c58(ACTIVE(cons(mark(z0), z1)), CONS(mark(z0), z1), MARK(z0)) by MARK(cons(z0, z1)) -> c58(ACTIVE(cons(z0, z1)), CONS(mark(z0), z1), MARK(z0)) MARK(cons(U11(z0, z1, z2, z3), x1)) -> c58(ACTIVE(cons(active(U11(mark(z0), z1, z2, z3)), x1)), CONS(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(cons(tt, x1)) -> c58(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(U12(z0, z1), x1)) -> c58(ACTIVE(cons(active(U12(mark(z0), z1)), x1)), CONS(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(cons(splitAt(z0, z1), x1)) -> c58(ACTIVE(cons(active(splitAt(mark(z0), mark(z1))), x1)), CONS(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(cons(pair(z0, z1), x1)) -> c58(ACTIVE(cons(active(pair(mark(z0), mark(z1))), x1)), CONS(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(cons(cons(z0, z1), x1)) -> c58(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(afterNth(z0, z1), x1)) -> c58(ACTIVE(cons(active(afterNth(mark(z0), mark(z1))), x1)), CONS(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(cons(snd(z0), x1)) -> c58(ACTIVE(cons(active(snd(mark(z0))), x1)), CONS(mark(snd(z0)), x1), MARK(snd(z0))) MARK(cons(and(z0, z1), x1)) -> c58(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(fst(z0), x1)) -> c58(ACTIVE(cons(active(fst(mark(z0))), x1)), CONS(mark(fst(z0)), x1), MARK(fst(z0))) MARK(cons(head(z0), x1)) -> c58(ACTIVE(cons(active(head(mark(z0))), x1)), CONS(mark(head(z0)), x1), MARK(head(z0))) MARK(cons(natsFrom(z0), x1)) -> c58(ACTIVE(cons(active(natsFrom(mark(z0))), x1)), CONS(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(cons(s(z0), x1)) -> c58(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(sel(z0, z1), x1)) -> c58(ACTIVE(cons(active(sel(mark(z0), mark(z1))), x1)), CONS(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(cons(0, x1)) -> c58(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(nil, x1)) -> c58(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(tail(z0), x1)) -> c58(ACTIVE(cons(active(tail(mark(z0))), x1)), CONS(mark(tail(z0)), x1), MARK(tail(z0))) MARK(cons(take(z0, z1), x1)) -> c58(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(x0, x1)) -> c58(CONS(mark(x0), x1)) ---------------------------------------- (116) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(x1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(pair(z0, x1)) -> c57(ACTIVE(pair(z0, mark(x1))), PAIR(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(pair(x0, z1)) -> c57(ACTIVE(pair(mark(x0), z1)), PAIR(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(pair(x0, U11(z0, z1, z2, z3))) -> c57(ACTIVE(pair(mark(x0), active(U11(mark(z0), z1, z2, z3)))), PAIR(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(pair(x0, tt)) -> c57(ACTIVE(pair(mark(x0), active(tt))), PAIR(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(pair(x0, U12(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(U12(mark(z0), z1)))), PAIR(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(pair(x0, splitAt(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(splitAt(mark(z0), mark(z1))))), PAIR(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(pair(x0, pair(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(pair(mark(z0), mark(z1))))), PAIR(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(pair(x0, cons(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(cons(mark(z0), z1)))), PAIR(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(pair(x0, afterNth(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(afterNth(mark(z0), mark(z1))))), PAIR(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(pair(x0, snd(z0))) -> c57(ACTIVE(pair(mark(x0), active(snd(mark(z0))))), PAIR(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(pair(x0, and(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(and(mark(z0), z1)))), PAIR(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(pair(x0, fst(z0))) -> c57(ACTIVE(pair(mark(x0), active(fst(mark(z0))))), PAIR(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(pair(x0, head(z0))) -> c57(ACTIVE(pair(mark(x0), active(head(mark(z0))))), PAIR(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(pair(x0, natsFrom(z0))) -> c57(ACTIVE(pair(mark(x0), active(natsFrom(mark(z0))))), PAIR(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(pair(x0, s(z0))) -> c57(ACTIVE(pair(mark(x0), active(s(mark(z0))))), PAIR(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(pair(x0, sel(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(sel(mark(z0), mark(z1))))), PAIR(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(pair(x0, 0)) -> c57(ACTIVE(pair(mark(x0), active(0))), PAIR(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(pair(x0, nil)) -> c57(ACTIVE(pair(mark(x0), active(nil))), PAIR(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(pair(x0, tail(z0))) -> c57(ACTIVE(pair(mark(x0), active(tail(mark(z0))))), PAIR(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(pair(x0, take(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(take(mark(z0), mark(z1))))), PAIR(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(pair(U11(z0, z1, z2, z3), x1)) -> c57(ACTIVE(pair(active(U11(mark(z0), z1, z2, z3)), mark(x1))), PAIR(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(pair(tt, x1)) -> c57(ACTIVE(pair(active(tt), mark(x1))), PAIR(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(pair(U12(z0, z1), x1)) -> c57(ACTIVE(pair(active(U12(mark(z0), z1)), mark(x1))), PAIR(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(pair(splitAt(z0, z1), x1)) -> c57(ACTIVE(pair(active(splitAt(mark(z0), mark(z1))), mark(x1))), PAIR(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(pair(pair(z0, z1), x1)) -> c57(ACTIVE(pair(active(pair(mark(z0), mark(z1))), mark(x1))), PAIR(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(pair(cons(z0, z1), x1)) -> c57(ACTIVE(pair(active(cons(mark(z0), z1)), mark(x1))), PAIR(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(pair(afterNth(z0, z1), x1)) -> c57(ACTIVE(pair(active(afterNth(mark(z0), mark(z1))), mark(x1))), PAIR(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(pair(snd(z0), x1)) -> c57(ACTIVE(pair(active(snd(mark(z0))), mark(x1))), PAIR(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(pair(and(z0, z1), x1)) -> c57(ACTIVE(pair(active(and(mark(z0), z1)), mark(x1))), PAIR(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(pair(fst(z0), x1)) -> c57(ACTIVE(pair(active(fst(mark(z0))), mark(x1))), PAIR(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(pair(head(z0), x1)) -> c57(ACTIVE(pair(active(head(mark(z0))), mark(x1))), PAIR(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(pair(natsFrom(z0), x1)) -> c57(ACTIVE(pair(active(natsFrom(mark(z0))), mark(x1))), PAIR(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(pair(s(z0), x1)) -> c57(ACTIVE(pair(active(s(mark(z0))), mark(x1))), PAIR(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(pair(sel(z0, z1), x1)) -> c57(ACTIVE(pair(active(sel(mark(z0), mark(z1))), mark(x1))), PAIR(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(pair(0, x1)) -> c57(ACTIVE(pair(active(0), mark(x1))), PAIR(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(pair(nil, x1)) -> c57(ACTIVE(pair(active(nil), mark(x1))), PAIR(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(pair(tail(z0), x1)) -> c57(ACTIVE(pair(active(tail(mark(z0))), mark(x1))), PAIR(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(pair(take(z0, z1), x1)) -> c57(ACTIVE(pair(active(take(mark(z0), mark(z1))), mark(x1))), PAIR(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(z0, z1)), CONS(mark(z0), z1), MARK(z0)) MARK(cons(U11(z0, z1, z2, z3), x1)) -> c58(ACTIVE(cons(active(U11(mark(z0), z1, z2, z3)), x1)), CONS(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(cons(tt, x1)) -> c58(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(U12(z0, z1), x1)) -> c58(ACTIVE(cons(active(U12(mark(z0), z1)), x1)), CONS(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(cons(splitAt(z0, z1), x1)) -> c58(ACTIVE(cons(active(splitAt(mark(z0), mark(z1))), x1)), CONS(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(cons(pair(z0, z1), x1)) -> c58(ACTIVE(cons(active(pair(mark(z0), mark(z1))), x1)), CONS(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(cons(cons(z0, z1), x1)) -> c58(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(afterNth(z0, z1), x1)) -> c58(ACTIVE(cons(active(afterNth(mark(z0), mark(z1))), x1)), CONS(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(cons(snd(z0), x1)) -> c58(ACTIVE(cons(active(snd(mark(z0))), x1)), CONS(mark(snd(z0)), x1), MARK(snd(z0))) MARK(cons(and(z0, z1), x1)) -> c58(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(fst(z0), x1)) -> c58(ACTIVE(cons(active(fst(mark(z0))), x1)), CONS(mark(fst(z0)), x1), MARK(fst(z0))) MARK(cons(head(z0), x1)) -> c58(ACTIVE(cons(active(head(mark(z0))), x1)), CONS(mark(head(z0)), x1), MARK(head(z0))) MARK(cons(natsFrom(z0), x1)) -> c58(ACTIVE(cons(active(natsFrom(mark(z0))), x1)), CONS(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(cons(s(z0), x1)) -> c58(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(sel(z0, z1), x1)) -> c58(ACTIVE(cons(active(sel(mark(z0), mark(z1))), x1)), CONS(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(cons(0, x1)) -> c58(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(nil, x1)) -> c58(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(tail(z0), x1)) -> c58(ACTIVE(cons(active(tail(mark(z0))), x1)), CONS(mark(tail(z0)), x1), MARK(tail(z0))) MARK(cons(take(z0, z1), x1)) -> c58(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(x0, x1)) -> c58(CONS(mark(x0), x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(pair(z0, x1)) -> c57(ACTIVE(pair(z0, mark(x1))), PAIR(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(pair(x0, z1)) -> c57(ACTIVE(pair(mark(x0), z1)), PAIR(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(pair(x0, U11(z0, z1, z2, z3))) -> c57(ACTIVE(pair(mark(x0), active(U11(mark(z0), z1, z2, z3)))), PAIR(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(pair(x0, tt)) -> c57(ACTIVE(pair(mark(x0), active(tt))), PAIR(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(pair(x0, U12(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(U12(mark(z0), z1)))), PAIR(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(pair(x0, splitAt(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(splitAt(mark(z0), mark(z1))))), PAIR(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(pair(x0, pair(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(pair(mark(z0), mark(z1))))), PAIR(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(pair(x0, cons(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(cons(mark(z0), z1)))), PAIR(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(pair(x0, afterNth(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(afterNth(mark(z0), mark(z1))))), PAIR(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(pair(x0, snd(z0))) -> c57(ACTIVE(pair(mark(x0), active(snd(mark(z0))))), PAIR(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(pair(x0, and(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(and(mark(z0), z1)))), PAIR(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(pair(x0, fst(z0))) -> c57(ACTIVE(pair(mark(x0), active(fst(mark(z0))))), PAIR(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(pair(x0, head(z0))) -> c57(ACTIVE(pair(mark(x0), active(head(mark(z0))))), PAIR(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(pair(x0, natsFrom(z0))) -> c57(ACTIVE(pair(mark(x0), active(natsFrom(mark(z0))))), PAIR(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(pair(x0, s(z0))) -> c57(ACTIVE(pair(mark(x0), active(s(mark(z0))))), PAIR(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(pair(x0, sel(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(sel(mark(z0), mark(z1))))), PAIR(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(pair(x0, 0)) -> c57(ACTIVE(pair(mark(x0), active(0))), PAIR(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(pair(x0, nil)) -> c57(ACTIVE(pair(mark(x0), active(nil))), PAIR(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(pair(x0, tail(z0))) -> c57(ACTIVE(pair(mark(x0), active(tail(mark(z0))))), PAIR(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(pair(x0, take(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(take(mark(z0), mark(z1))))), PAIR(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(pair(U11(z0, z1, z2, z3), x1)) -> c57(ACTIVE(pair(active(U11(mark(z0), z1, z2, z3)), mark(x1))), PAIR(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(pair(tt, x1)) -> c57(ACTIVE(pair(active(tt), mark(x1))), PAIR(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(pair(U12(z0, z1), x1)) -> c57(ACTIVE(pair(active(U12(mark(z0), z1)), mark(x1))), PAIR(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(pair(splitAt(z0, z1), x1)) -> c57(ACTIVE(pair(active(splitAt(mark(z0), mark(z1))), mark(x1))), PAIR(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(pair(pair(z0, z1), x1)) -> c57(ACTIVE(pair(active(pair(mark(z0), mark(z1))), mark(x1))), PAIR(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(pair(cons(z0, z1), x1)) -> c57(ACTIVE(pair(active(cons(mark(z0), z1)), mark(x1))), PAIR(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(pair(afterNth(z0, z1), x1)) -> c57(ACTIVE(pair(active(afterNth(mark(z0), mark(z1))), mark(x1))), PAIR(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(pair(snd(z0), x1)) -> c57(ACTIVE(pair(active(snd(mark(z0))), mark(x1))), PAIR(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(pair(and(z0, z1), x1)) -> c57(ACTIVE(pair(active(and(mark(z0), z1)), mark(x1))), PAIR(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(pair(fst(z0), x1)) -> c57(ACTIVE(pair(active(fst(mark(z0))), mark(x1))), PAIR(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(pair(head(z0), x1)) -> c57(ACTIVE(pair(active(head(mark(z0))), mark(x1))), PAIR(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(pair(natsFrom(z0), x1)) -> c57(ACTIVE(pair(active(natsFrom(mark(z0))), mark(x1))), PAIR(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(pair(s(z0), x1)) -> c57(ACTIVE(pair(active(s(mark(z0))), mark(x1))), PAIR(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(pair(sel(z0, z1), x1)) -> c57(ACTIVE(pair(active(sel(mark(z0), mark(z1))), mark(x1))), PAIR(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(pair(0, x1)) -> c57(ACTIVE(pair(active(0), mark(x1))), PAIR(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(pair(nil, x1)) -> c57(ACTIVE(pair(active(nil), mark(x1))), PAIR(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(pair(tail(z0), x1)) -> c57(ACTIVE(pair(active(tail(mark(z0))), mark(x1))), PAIR(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(pair(take(z0, z1), x1)) -> c57(ACTIVE(pair(active(take(mark(z0), mark(z1))), mark(x1))), PAIR(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(cons(z0, z1)) -> c58(ACTIVE(cons(z0, z1)), CONS(mark(z0), z1), MARK(z0)) MARK(cons(U11(z0, z1, z2, z3), x1)) -> c58(ACTIVE(cons(active(U11(mark(z0), z1, z2, z3)), x1)), CONS(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(cons(tt, x1)) -> c58(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(U12(z0, z1), x1)) -> c58(ACTIVE(cons(active(U12(mark(z0), z1)), x1)), CONS(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(cons(splitAt(z0, z1), x1)) -> c58(ACTIVE(cons(active(splitAt(mark(z0), mark(z1))), x1)), CONS(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(cons(pair(z0, z1), x1)) -> c58(ACTIVE(cons(active(pair(mark(z0), mark(z1))), x1)), CONS(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(cons(cons(z0, z1), x1)) -> c58(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(afterNth(z0, z1), x1)) -> c58(ACTIVE(cons(active(afterNth(mark(z0), mark(z1))), x1)), CONS(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(cons(snd(z0), x1)) -> c58(ACTIVE(cons(active(snd(mark(z0))), x1)), CONS(mark(snd(z0)), x1), MARK(snd(z0))) MARK(cons(and(z0, z1), x1)) -> c58(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(fst(z0), x1)) -> c58(ACTIVE(cons(active(fst(mark(z0))), x1)), CONS(mark(fst(z0)), x1), MARK(fst(z0))) MARK(cons(head(z0), x1)) -> c58(ACTIVE(cons(active(head(mark(z0))), x1)), CONS(mark(head(z0)), x1), MARK(head(z0))) MARK(cons(natsFrom(z0), x1)) -> c58(ACTIVE(cons(active(natsFrom(mark(z0))), x1)), CONS(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(cons(s(z0), x1)) -> c58(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(sel(z0, z1), x1)) -> c58(ACTIVE(cons(active(sel(mark(z0), mark(z1))), x1)), CONS(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(cons(0, x1)) -> c58(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(nil, x1)) -> c58(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(tail(z0), x1)) -> c58(ACTIVE(cons(active(tail(mark(z0))), x1)), CONS(mark(tail(z0)), x1), MARK(tail(z0))) MARK(cons(take(z0, z1), x1)) -> c58(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(x0, x1)) -> c58(CONS(mark(x0), x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ENCARG_1 Compound Symbols: c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2, c19_3, c19_2, c53_3, c53_1, c55_3, c55_1, c56_4, c57_4, c58_3, c58_1 ---------------------------------------- (117) CdtRhsSimplificationProcessorProof (BOTH BOUNDS(ID, ID)) Removed 1 trailing tuple parts ---------------------------------------- (118) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(x1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(pair(z0, x1)) -> c57(ACTIVE(pair(z0, mark(x1))), PAIR(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(pair(x0, z1)) -> c57(ACTIVE(pair(mark(x0), z1)), PAIR(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(pair(x0, U11(z0, z1, z2, z3))) -> c57(ACTIVE(pair(mark(x0), active(U11(mark(z0), z1, z2, z3)))), PAIR(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(pair(x0, tt)) -> c57(ACTIVE(pair(mark(x0), active(tt))), PAIR(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(pair(x0, U12(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(U12(mark(z0), z1)))), PAIR(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(pair(x0, splitAt(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(splitAt(mark(z0), mark(z1))))), PAIR(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(pair(x0, pair(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(pair(mark(z0), mark(z1))))), PAIR(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(pair(x0, cons(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(cons(mark(z0), z1)))), PAIR(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(pair(x0, afterNth(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(afterNth(mark(z0), mark(z1))))), PAIR(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(pair(x0, snd(z0))) -> c57(ACTIVE(pair(mark(x0), active(snd(mark(z0))))), PAIR(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(pair(x0, and(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(and(mark(z0), z1)))), PAIR(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(pair(x0, fst(z0))) -> c57(ACTIVE(pair(mark(x0), active(fst(mark(z0))))), PAIR(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(pair(x0, head(z0))) -> c57(ACTIVE(pair(mark(x0), active(head(mark(z0))))), PAIR(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(pair(x0, natsFrom(z0))) -> c57(ACTIVE(pair(mark(x0), active(natsFrom(mark(z0))))), PAIR(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(pair(x0, s(z0))) -> c57(ACTIVE(pair(mark(x0), active(s(mark(z0))))), PAIR(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(pair(x0, sel(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(sel(mark(z0), mark(z1))))), PAIR(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(pair(x0, 0)) -> c57(ACTIVE(pair(mark(x0), active(0))), PAIR(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(pair(x0, nil)) -> c57(ACTIVE(pair(mark(x0), active(nil))), PAIR(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(pair(x0, tail(z0))) -> c57(ACTIVE(pair(mark(x0), active(tail(mark(z0))))), PAIR(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(pair(x0, take(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(take(mark(z0), mark(z1))))), PAIR(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(pair(U11(z0, z1, z2, z3), x1)) -> c57(ACTIVE(pair(active(U11(mark(z0), z1, z2, z3)), mark(x1))), PAIR(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(pair(tt, x1)) -> c57(ACTIVE(pair(active(tt), mark(x1))), PAIR(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(pair(U12(z0, z1), x1)) -> c57(ACTIVE(pair(active(U12(mark(z0), z1)), mark(x1))), PAIR(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(pair(splitAt(z0, z1), x1)) -> c57(ACTIVE(pair(active(splitAt(mark(z0), mark(z1))), mark(x1))), PAIR(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(pair(pair(z0, z1), x1)) -> c57(ACTIVE(pair(active(pair(mark(z0), mark(z1))), mark(x1))), PAIR(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(pair(cons(z0, z1), x1)) -> c57(ACTIVE(pair(active(cons(mark(z0), z1)), mark(x1))), PAIR(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(pair(afterNth(z0, z1), x1)) -> c57(ACTIVE(pair(active(afterNth(mark(z0), mark(z1))), mark(x1))), PAIR(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(pair(snd(z0), x1)) -> c57(ACTIVE(pair(active(snd(mark(z0))), mark(x1))), PAIR(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(pair(and(z0, z1), x1)) -> c57(ACTIVE(pair(active(and(mark(z0), z1)), mark(x1))), PAIR(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(pair(fst(z0), x1)) -> c57(ACTIVE(pair(active(fst(mark(z0))), mark(x1))), PAIR(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(pair(head(z0), x1)) -> c57(ACTIVE(pair(active(head(mark(z0))), mark(x1))), PAIR(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(pair(natsFrom(z0), x1)) -> c57(ACTIVE(pair(active(natsFrom(mark(z0))), mark(x1))), PAIR(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(pair(s(z0), x1)) -> c57(ACTIVE(pair(active(s(mark(z0))), mark(x1))), PAIR(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(pair(sel(z0, z1), x1)) -> c57(ACTIVE(pair(active(sel(mark(z0), mark(z1))), mark(x1))), PAIR(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(pair(0, x1)) -> c57(ACTIVE(pair(active(0), mark(x1))), PAIR(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(pair(nil, x1)) -> c57(ACTIVE(pair(active(nil), mark(x1))), PAIR(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(pair(tail(z0), x1)) -> c57(ACTIVE(pair(active(tail(mark(z0))), mark(x1))), PAIR(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(pair(take(z0, z1), x1)) -> c57(ACTIVE(pair(active(take(mark(z0), mark(z1))), mark(x1))), PAIR(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(cons(U11(z0, z1, z2, z3), x1)) -> c58(ACTIVE(cons(active(U11(mark(z0), z1, z2, z3)), x1)), CONS(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(cons(tt, x1)) -> c58(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(U12(z0, z1), x1)) -> c58(ACTIVE(cons(active(U12(mark(z0), z1)), x1)), CONS(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(cons(splitAt(z0, z1), x1)) -> c58(ACTIVE(cons(active(splitAt(mark(z0), mark(z1))), x1)), CONS(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(cons(pair(z0, z1), x1)) -> c58(ACTIVE(cons(active(pair(mark(z0), mark(z1))), x1)), CONS(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(cons(cons(z0, z1), x1)) -> c58(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(afterNth(z0, z1), x1)) -> c58(ACTIVE(cons(active(afterNth(mark(z0), mark(z1))), x1)), CONS(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(cons(snd(z0), x1)) -> c58(ACTIVE(cons(active(snd(mark(z0))), x1)), CONS(mark(snd(z0)), x1), MARK(snd(z0))) MARK(cons(and(z0, z1), x1)) -> c58(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(fst(z0), x1)) -> c58(ACTIVE(cons(active(fst(mark(z0))), x1)), CONS(mark(fst(z0)), x1), MARK(fst(z0))) MARK(cons(head(z0), x1)) -> c58(ACTIVE(cons(active(head(mark(z0))), x1)), CONS(mark(head(z0)), x1), MARK(head(z0))) MARK(cons(natsFrom(z0), x1)) -> c58(ACTIVE(cons(active(natsFrom(mark(z0))), x1)), CONS(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(cons(s(z0), x1)) -> c58(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(sel(z0, z1), x1)) -> c58(ACTIVE(cons(active(sel(mark(z0), mark(z1))), x1)), CONS(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(cons(0, x1)) -> c58(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(nil, x1)) -> c58(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(tail(z0), x1)) -> c58(ACTIVE(cons(active(tail(mark(z0))), x1)), CONS(mark(tail(z0)), x1), MARK(tail(z0))) MARK(cons(take(z0, z1), x1)) -> c58(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(x0, x1)) -> c58(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c58(CONS(mark(z0), z1), MARK(z0)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(pair(z0, x1)) -> c57(ACTIVE(pair(z0, mark(x1))), PAIR(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(pair(x0, z1)) -> c57(ACTIVE(pair(mark(x0), z1)), PAIR(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(pair(x0, U11(z0, z1, z2, z3))) -> c57(ACTIVE(pair(mark(x0), active(U11(mark(z0), z1, z2, z3)))), PAIR(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(pair(x0, tt)) -> c57(ACTIVE(pair(mark(x0), active(tt))), PAIR(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(pair(x0, U12(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(U12(mark(z0), z1)))), PAIR(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(pair(x0, splitAt(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(splitAt(mark(z0), mark(z1))))), PAIR(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(pair(x0, pair(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(pair(mark(z0), mark(z1))))), PAIR(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(pair(x0, cons(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(cons(mark(z0), z1)))), PAIR(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(pair(x0, afterNth(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(afterNth(mark(z0), mark(z1))))), PAIR(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(pair(x0, snd(z0))) -> c57(ACTIVE(pair(mark(x0), active(snd(mark(z0))))), PAIR(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(pair(x0, and(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(and(mark(z0), z1)))), PAIR(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(pair(x0, fst(z0))) -> c57(ACTIVE(pair(mark(x0), active(fst(mark(z0))))), PAIR(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(pair(x0, head(z0))) -> c57(ACTIVE(pair(mark(x0), active(head(mark(z0))))), PAIR(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(pair(x0, natsFrom(z0))) -> c57(ACTIVE(pair(mark(x0), active(natsFrom(mark(z0))))), PAIR(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(pair(x0, s(z0))) -> c57(ACTIVE(pair(mark(x0), active(s(mark(z0))))), PAIR(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(pair(x0, sel(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(sel(mark(z0), mark(z1))))), PAIR(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(pair(x0, 0)) -> c57(ACTIVE(pair(mark(x0), active(0))), PAIR(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(pair(x0, nil)) -> c57(ACTIVE(pair(mark(x0), active(nil))), PAIR(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(pair(x0, tail(z0))) -> c57(ACTIVE(pair(mark(x0), active(tail(mark(z0))))), PAIR(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(pair(x0, take(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(take(mark(z0), mark(z1))))), PAIR(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(pair(U11(z0, z1, z2, z3), x1)) -> c57(ACTIVE(pair(active(U11(mark(z0), z1, z2, z3)), mark(x1))), PAIR(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(pair(tt, x1)) -> c57(ACTIVE(pair(active(tt), mark(x1))), PAIR(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(pair(U12(z0, z1), x1)) -> c57(ACTIVE(pair(active(U12(mark(z0), z1)), mark(x1))), PAIR(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(pair(splitAt(z0, z1), x1)) -> c57(ACTIVE(pair(active(splitAt(mark(z0), mark(z1))), mark(x1))), PAIR(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(pair(pair(z0, z1), x1)) -> c57(ACTIVE(pair(active(pair(mark(z0), mark(z1))), mark(x1))), PAIR(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(pair(cons(z0, z1), x1)) -> c57(ACTIVE(pair(active(cons(mark(z0), z1)), mark(x1))), PAIR(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(pair(afterNth(z0, z1), x1)) -> c57(ACTIVE(pair(active(afterNth(mark(z0), mark(z1))), mark(x1))), PAIR(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(pair(snd(z0), x1)) -> c57(ACTIVE(pair(active(snd(mark(z0))), mark(x1))), PAIR(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(pair(and(z0, z1), x1)) -> c57(ACTIVE(pair(active(and(mark(z0), z1)), mark(x1))), PAIR(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(pair(fst(z0), x1)) -> c57(ACTIVE(pair(active(fst(mark(z0))), mark(x1))), PAIR(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(pair(head(z0), x1)) -> c57(ACTIVE(pair(active(head(mark(z0))), mark(x1))), PAIR(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(pair(natsFrom(z0), x1)) -> c57(ACTIVE(pair(active(natsFrom(mark(z0))), mark(x1))), PAIR(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(pair(s(z0), x1)) -> c57(ACTIVE(pair(active(s(mark(z0))), mark(x1))), PAIR(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(pair(sel(z0, z1), x1)) -> c57(ACTIVE(pair(active(sel(mark(z0), mark(z1))), mark(x1))), PAIR(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(pair(0, x1)) -> c57(ACTIVE(pair(active(0), mark(x1))), PAIR(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(pair(nil, x1)) -> c57(ACTIVE(pair(active(nil), mark(x1))), PAIR(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(pair(tail(z0), x1)) -> c57(ACTIVE(pair(active(tail(mark(z0))), mark(x1))), PAIR(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(pair(take(z0, z1), x1)) -> c57(ACTIVE(pair(active(take(mark(z0), mark(z1))), mark(x1))), PAIR(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(cons(U11(z0, z1, z2, z3), x1)) -> c58(ACTIVE(cons(active(U11(mark(z0), z1, z2, z3)), x1)), CONS(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(cons(tt, x1)) -> c58(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(U12(z0, z1), x1)) -> c58(ACTIVE(cons(active(U12(mark(z0), z1)), x1)), CONS(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(cons(splitAt(z0, z1), x1)) -> c58(ACTIVE(cons(active(splitAt(mark(z0), mark(z1))), x1)), CONS(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(cons(pair(z0, z1), x1)) -> c58(ACTIVE(cons(active(pair(mark(z0), mark(z1))), x1)), CONS(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(cons(cons(z0, z1), x1)) -> c58(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(afterNth(z0, z1), x1)) -> c58(ACTIVE(cons(active(afterNth(mark(z0), mark(z1))), x1)), CONS(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(cons(snd(z0), x1)) -> c58(ACTIVE(cons(active(snd(mark(z0))), x1)), CONS(mark(snd(z0)), x1), MARK(snd(z0))) MARK(cons(and(z0, z1), x1)) -> c58(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(fst(z0), x1)) -> c58(ACTIVE(cons(active(fst(mark(z0))), x1)), CONS(mark(fst(z0)), x1), MARK(fst(z0))) MARK(cons(head(z0), x1)) -> c58(ACTIVE(cons(active(head(mark(z0))), x1)), CONS(mark(head(z0)), x1), MARK(head(z0))) MARK(cons(natsFrom(z0), x1)) -> c58(ACTIVE(cons(active(natsFrom(mark(z0))), x1)), CONS(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(cons(s(z0), x1)) -> c58(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(sel(z0, z1), x1)) -> c58(ACTIVE(cons(active(sel(mark(z0), mark(z1))), x1)), CONS(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(cons(0, x1)) -> c58(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(nil, x1)) -> c58(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(tail(z0), x1)) -> c58(ACTIVE(cons(active(tail(mark(z0))), x1)), CONS(mark(tail(z0)), x1), MARK(tail(z0))) MARK(cons(take(z0, z1), x1)) -> c58(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(x0, x1)) -> c58(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c58(CONS(mark(z0), z1), MARK(z0)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ENCARG_1 Compound Symbols: c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c59_4, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2, c19_3, c19_2, c53_3, c53_1, c55_3, c55_1, c56_4, c57_4, c58_3, c58_1, c58_2 ---------------------------------------- (119) CdtNarrowingProof (BOTH BOUNDS(ID, ID)) Use narrowing to replace MARK(afterNth(z0, z1)) -> c59(ACTIVE(afterNth(mark(z0), mark(z1))), AFTERNTH(mark(z0), mark(z1)), MARK(z0), MARK(z1)) by MARK(afterNth(z0, x1)) -> c59(ACTIVE(afterNth(z0, mark(x1))), AFTERNTH(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(afterNth(x0, z1)) -> c59(ACTIVE(afterNth(mark(x0), z1)), AFTERNTH(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(afterNth(x0, U11(z0, z1, z2, z3))) -> c59(ACTIVE(afterNth(mark(x0), active(U11(mark(z0), z1, z2, z3)))), AFTERNTH(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(afterNth(x0, tt)) -> c59(ACTIVE(afterNth(mark(x0), active(tt))), AFTERNTH(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(afterNth(x0, U12(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(U12(mark(z0), z1)))), AFTERNTH(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(afterNth(x0, splitAt(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(splitAt(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(afterNth(x0, pair(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(pair(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(afterNth(x0, cons(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(cons(mark(z0), z1)))), AFTERNTH(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(afterNth(x0, afterNth(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(afterNth(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(afterNth(x0, snd(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(snd(mark(z0))))), AFTERNTH(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(afterNth(x0, and(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(and(mark(z0), z1)))), AFTERNTH(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(afterNth(x0, fst(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(fst(mark(z0))))), AFTERNTH(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(afterNth(x0, head(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(head(mark(z0))))), AFTERNTH(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(afterNth(x0, natsFrom(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(natsFrom(mark(z0))))), AFTERNTH(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(afterNth(x0, s(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(s(mark(z0))))), AFTERNTH(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(afterNth(x0, sel(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(sel(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(afterNth(x0, 0)) -> c59(ACTIVE(afterNth(mark(x0), active(0))), AFTERNTH(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(afterNth(x0, nil)) -> c59(ACTIVE(afterNth(mark(x0), active(nil))), AFTERNTH(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(afterNth(x0, tail(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(tail(mark(z0))))), AFTERNTH(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(afterNth(x0, take(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(take(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(afterNth(U11(z0, z1, z2, z3), x1)) -> c59(ACTIVE(afterNth(active(U11(mark(z0), z1, z2, z3)), mark(x1))), AFTERNTH(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(afterNth(tt, x1)) -> c59(ACTIVE(afterNth(active(tt), mark(x1))), AFTERNTH(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(afterNth(U12(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(U12(mark(z0), z1)), mark(x1))), AFTERNTH(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(afterNth(splitAt(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(splitAt(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(afterNth(pair(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(pair(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(afterNth(cons(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(cons(mark(z0), z1)), mark(x1))), AFTERNTH(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(afterNth(afterNth(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(afterNth(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(afterNth(snd(z0), x1)) -> c59(ACTIVE(afterNth(active(snd(mark(z0))), mark(x1))), AFTERNTH(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(afterNth(and(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(and(mark(z0), z1)), mark(x1))), AFTERNTH(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(afterNth(fst(z0), x1)) -> c59(ACTIVE(afterNth(active(fst(mark(z0))), mark(x1))), AFTERNTH(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(afterNth(head(z0), x1)) -> c59(ACTIVE(afterNth(active(head(mark(z0))), mark(x1))), AFTERNTH(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(afterNth(natsFrom(z0), x1)) -> c59(ACTIVE(afterNth(active(natsFrom(mark(z0))), mark(x1))), AFTERNTH(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(afterNth(s(z0), x1)) -> c59(ACTIVE(afterNth(active(s(mark(z0))), mark(x1))), AFTERNTH(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(afterNth(sel(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(sel(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(afterNth(0, x1)) -> c59(ACTIVE(afterNth(active(0), mark(x1))), AFTERNTH(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(afterNth(nil, x1)) -> c59(ACTIVE(afterNth(active(nil), mark(x1))), AFTERNTH(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(afterNth(tail(z0), x1)) -> c59(ACTIVE(afterNth(active(tail(mark(z0))), mark(x1))), AFTERNTH(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(afterNth(take(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(take(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) ---------------------------------------- (120) Obligation: Complexity Dependency Tuples Problem Rules: encArg(tt) -> tt encArg(0) -> 0 encArg(nil) -> nil encArg(cons_active(z0)) -> active(encArg(z0)) encArg(cons_mark(z0)) -> mark(encArg(z0)) encArg(cons_U11(z0, z1, z2, z3)) -> U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)) encArg(cons_U12(z0, z1)) -> U12(encArg(z0), encArg(z1)) encArg(cons_splitAt(z0, z1)) -> splitAt(encArg(z0), encArg(z1)) encArg(cons_pair(z0, z1)) -> pair(encArg(z0), encArg(z1)) encArg(cons_cons(z0, z1)) -> cons(encArg(z0), encArg(z1)) encArg(cons_afterNth(z0, z1)) -> afterNth(encArg(z0), encArg(z1)) encArg(cons_snd(z0)) -> snd(encArg(z0)) encArg(cons_and(z0, z1)) -> and(encArg(z0), encArg(z1)) encArg(cons_fst(z0)) -> fst(encArg(z0)) encArg(cons_head(z0)) -> head(encArg(z0)) encArg(cons_natsFrom(z0)) -> natsFrom(encArg(z0)) encArg(cons_s(z0)) -> s(encArg(z0)) encArg(cons_sel(z0, z1)) -> sel(encArg(z0), encArg(z1)) encArg(cons_tail(z0)) -> tail(encArg(z0)) encArg(cons_take(z0, z1)) -> take(encArg(z0), encArg(z1)) active(U11(tt, z0, z1, z2)) -> mark(U12(splitAt(z0, z2), z1)) active(U12(pair(z0, z1), z2)) -> mark(pair(cons(z2, z0), z1)) active(afterNth(z0, z1)) -> mark(snd(splitAt(z0, z1))) active(and(tt, z0)) -> mark(z0) active(fst(pair(z0, z1))) -> mark(z0) active(head(cons(z0, z1))) -> mark(z0) active(natsFrom(z0)) -> mark(cons(z0, natsFrom(s(z0)))) active(sel(z0, z1)) -> mark(head(afterNth(z0, z1))) active(snd(pair(z0, z1))) -> mark(z1) active(splitAt(0, z0)) -> mark(pair(nil, z0)) active(splitAt(s(z0), cons(z1, z2))) -> mark(U11(tt, z0, z1, z2)) active(tail(cons(z0, z1))) -> mark(z1) active(take(z0, z1)) -> mark(fst(splitAt(z0, z1))) mark(U11(z0, z1, z2, z3)) -> active(U11(mark(z0), z1, z2, z3)) mark(tt) -> active(tt) mark(U12(z0, z1)) -> active(U12(mark(z0), z1)) mark(splitAt(z0, z1)) -> active(splitAt(mark(z0), mark(z1))) mark(pair(z0, z1)) -> active(pair(mark(z0), mark(z1))) mark(cons(z0, z1)) -> active(cons(mark(z0), z1)) mark(afterNth(z0, z1)) -> active(afterNth(mark(z0), mark(z1))) mark(snd(z0)) -> active(snd(mark(z0))) mark(and(z0, z1)) -> active(and(mark(z0), z1)) mark(fst(z0)) -> active(fst(mark(z0))) mark(head(z0)) -> active(head(mark(z0))) mark(natsFrom(z0)) -> active(natsFrom(mark(z0))) mark(s(z0)) -> active(s(mark(z0))) mark(sel(z0, z1)) -> active(sel(mark(z0), mark(z1))) mark(0) -> active(0) mark(nil) -> active(nil) mark(tail(z0)) -> active(tail(mark(z0))) mark(take(z0, z1)) -> active(take(mark(z0), mark(z1))) U11(mark(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, mark(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, mark(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, mark(z3)) -> U11(z0, z1, z2, z3) U11(active(z0), z1, z2, z3) -> U11(z0, z1, z2, z3) U11(z0, active(z1), z2, z3) -> U11(z0, z1, z2, z3) U11(z0, z1, active(z2), z3) -> U11(z0, z1, z2, z3) U11(z0, z1, z2, active(z3)) -> U11(z0, z1, z2, z3) U12(mark(z0), z1) -> U12(z0, z1) U12(z0, mark(z1)) -> U12(z0, z1) U12(active(z0), z1) -> U12(z0, z1) U12(z0, active(z1)) -> U12(z0, z1) splitAt(mark(z0), z1) -> splitAt(z0, z1) splitAt(z0, mark(z1)) -> splitAt(z0, z1) splitAt(active(z0), z1) -> splitAt(z0, z1) splitAt(z0, active(z1)) -> splitAt(z0, z1) pair(mark(z0), z1) -> pair(z0, z1) pair(z0, mark(z1)) -> pair(z0, z1) pair(active(z0), z1) -> pair(z0, z1) pair(z0, active(z1)) -> pair(z0, z1) cons(mark(z0), z1) -> cons(z0, z1) cons(z0, mark(z1)) -> cons(z0, z1) cons(active(z0), z1) -> cons(z0, z1) cons(z0, active(z1)) -> cons(z0, z1) afterNth(mark(z0), z1) -> afterNth(z0, z1) afterNth(z0, mark(z1)) -> afterNth(z0, z1) afterNth(active(z0), z1) -> afterNth(z0, z1) afterNth(z0, active(z1)) -> afterNth(z0, z1) snd(mark(z0)) -> snd(z0) snd(active(z0)) -> snd(z0) and(mark(z0), z1) -> and(z0, z1) and(z0, mark(z1)) -> and(z0, z1) and(active(z0), z1) -> and(z0, z1) and(z0, active(z1)) -> and(z0, z1) fst(mark(z0)) -> fst(z0) fst(active(z0)) -> fst(z0) head(mark(z0)) -> head(z0) head(active(z0)) -> head(z0) natsFrom(mark(z0)) -> natsFrom(z0) natsFrom(active(z0)) -> natsFrom(z0) s(mark(z0)) -> s(z0) s(active(z0)) -> s(z0) sel(mark(z0), z1) -> sel(z0, z1) sel(z0, mark(z1)) -> sel(z0, z1) sel(active(z0), z1) -> sel(z0, z1) sel(z0, active(z1)) -> sel(z0, z1) tail(mark(z0)) -> tail(z0) tail(active(z0)) -> tail(z0) take(mark(z0), z1) -> take(z0, z1) take(z0, mark(z1)) -> take(z0, z1) take(active(z0), z1) -> take(z0, z1) take(z0, active(z1)) -> take(z0, z1) Tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 ENCODE_ACTIVE(z0) -> c(ACTIVE(encArg(z0))) ENCODE_U11(z0, z1, z2, z3) -> c(U11'(encArg(z0), encArg(z1), encArg(z2), encArg(z3))) ENCODE_MARK(z0) -> c(MARK(encArg(z0))) ENCODE_U12(z0, z1) -> c(U12'(encArg(z0), encArg(z1))) ENCODE_SPLITAT(z0, z1) -> c(SPLITAT(encArg(z0), encArg(z1))) ENCODE_PAIR(z0, z1) -> c(PAIR(encArg(z0), encArg(z1))) ENCODE_CONS(z0, z1) -> c(CONS(encArg(z0), encArg(z1))) ENCODE_AFTERNTH(z0, z1) -> c(AFTERNTH(encArg(z0), encArg(z1))) ENCODE_SND(z0) -> c(SND(encArg(z0))) ENCODE_AND(z0, z1) -> c(AND(encArg(z0), encArg(z1))) ENCODE_FST(z0) -> c(FST(encArg(z0))) ENCODE_HEAD(z0) -> c(HEAD(encArg(z0))) ENCODE_NATSFROM(z0) -> c(NATSFROM(encArg(z0))) ENCODE_S(z0) -> c(S(encArg(z0))) ENCODE_SEL(z0, z1) -> c(SEL(encArg(z0), encArg(z1))) ENCODE_TAIL(z0) -> c(TAIL(encArg(z0))) ENCODE_TAKE(z0, z1) -> c(TAKE(encArg(z0), encArg(z1))) ENCARG(cons_active(cons_active(z0))) -> c3(ACTIVE(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_active(cons_mark(z0))) -> c3(ACTIVE(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_active(cons_U11(z0, z1, z2, z3))) -> c3(ACTIVE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_active(cons_U12(z0, z1))) -> c3(ACTIVE(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_active(cons_splitAt(z0, z1))) -> c3(ACTIVE(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_active(cons_pair(z0, z1))) -> c3(ACTIVE(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_active(cons_cons(z0, z1))) -> c3(ACTIVE(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_active(cons_afterNth(z0, z1))) -> c3(ACTIVE(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_active(cons_snd(z0))) -> c3(ACTIVE(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_active(cons_and(z0, z1))) -> c3(ACTIVE(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_active(cons_fst(z0))) -> c3(ACTIVE(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_active(cons_head(z0))) -> c3(ACTIVE(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_active(cons_natsFrom(z0))) -> c3(ACTIVE(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_active(cons_s(z0))) -> c3(ACTIVE(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_active(cons_sel(z0, z1))) -> c3(ACTIVE(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_active(cons_tail(z0))) -> c3(ACTIVE(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_active(cons_take(z0, z1))) -> c3(ACTIVE(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(cons_active(z0))) -> c4(MARK(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_mark(cons_mark(z0))) -> c4(MARK(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_mark(cons_U11(z0, z1, z2, z3))) -> c4(MARK(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_mark(cons_U12(z0, z1))) -> c4(MARK(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_mark(cons_splitAt(z0, z1))) -> c4(MARK(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_mark(cons_pair(z0, z1))) -> c4(MARK(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_mark(cons_cons(z0, z1))) -> c4(MARK(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_mark(cons_afterNth(z0, z1))) -> c4(MARK(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_mark(cons_snd(z0))) -> c4(MARK(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_mark(cons_and(z0, z1))) -> c4(MARK(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_mark(cons_fst(z0))) -> c4(MARK(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_mark(cons_head(z0))) -> c4(MARK(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_mark(cons_natsFrom(z0))) -> c4(MARK(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_mark(cons_s(z0))) -> c4(MARK(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_mark(cons_sel(z0, z1))) -> c4(MARK(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_mark(cons_tail(z0))) -> c4(MARK(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_mark(cons_take(z0, z1))) -> c4(MARK(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_mark(tt)) -> c4(MARK(tt)) ENCARG(cons_mark(0)) -> c4(MARK(0)) ENCARG(cons_mark(nil)) -> c4(MARK(nil)) ENCARG(cons_U11(x0, x1, x2, cons_active(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), active(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_active(z0))) ENCARG(cons_U11(x0, x1, x2, cons_mark(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), mark(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_mark(z0))) ENCARG(cons_U11(x0, x1, x2, cons_U11(z0, z1, z2, z3))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U11(x0, x1, x2, cons_U12(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_splitAt(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_pair(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_cons(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_afterNth(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_snd(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), snd(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_snd(z0))) ENCARG(cons_U11(x0, x1, x2, cons_and(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_and(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_fst(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), fst(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_fst(z0))) ENCARG(cons_U11(x0, x1, x2, cons_head(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), head(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_head(z0))) ENCARG(cons_U11(x0, x1, x2, cons_natsFrom(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U11(x0, x1, x2, cons_s(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), s(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_s(z0))) ENCARG(cons_U11(x0, x1, x2, cons_sel(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U11(x0, x1, x2, cons_tail(z0))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tail(encArg(z0))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_tail(z0))) ENCARG(cons_U11(x0, x1, x2, cons_take(z0, z1))) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(x1), ENCARG(x2), ENCARG(cons_take(z0, z1))) ENCARG(cons_U11(x0, x1, cons_active(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), active(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_active(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_mark(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), mark(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_mark(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U11(z0, z1, z2, z3), x3)) -> c5(U11'(encArg(x0), encArg(x1), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_U12(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), U12(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_U12(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_splitAt(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), splitAt(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_splitAt(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_pair(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), pair(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_pair(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_cons(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), cons(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_cons(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_afterNth(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), afterNth(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_afterNth(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_snd(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), snd(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_snd(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_and(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), and(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_and(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_fst(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), fst(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_fst(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_head(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), head(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_head(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_natsFrom(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), natsFrom(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_natsFrom(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_s(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), s(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_s(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_sel(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), sel(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_sel(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_tail(z0), x3)) -> c5(U11'(encArg(x0), encArg(x1), tail(encArg(z0)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_tail(z0)), ENCARG(x3)) ENCARG(cons_U11(x0, x1, cons_take(z0, z1), x3)) -> c5(U11'(encArg(x0), encArg(x1), take(encArg(z0), encArg(z1)), encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(cons_take(z0, z1)), ENCARG(x3)) ENCARG(cons_U11(x0, cons_active(z0), x2, x3)) -> c5(U11'(encArg(x0), active(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_active(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_mark(z0), x2, x3)) -> c5(U11'(encArg(x0), mark(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_mark(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U11(z0, z1, z2, z3), x2, x3)) -> c5(U11'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_U12(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), U12(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_U12(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_splitAt(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), splitAt(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_splitAt(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_pair(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), pair(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_pair(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_cons(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), cons(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_cons(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_afterNth(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), afterNth(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_afterNth(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_snd(z0), x2, x3)) -> c5(U11'(encArg(x0), snd(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_snd(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_and(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), and(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_and(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_fst(z0), x2, x3)) -> c5(U11'(encArg(x0), fst(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_fst(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_head(z0), x2, x3)) -> c5(U11'(encArg(x0), head(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_head(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_natsFrom(z0), x2, x3)) -> c5(U11'(encArg(x0), natsFrom(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_natsFrom(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_s(z0), x2, x3)) -> c5(U11'(encArg(x0), s(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_s(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_sel(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), sel(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_sel(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_tail(z0), x2, x3)) -> c5(U11'(encArg(x0), tail(encArg(z0)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_tail(z0)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, cons_take(z0, z1), x2, x3)) -> c5(U11'(encArg(x0), take(encArg(z0), encArg(z1)), encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(cons_take(z0, z1)), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_active(z0), x1, x2, x3)) -> c5(U11'(active(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_active(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_mark(z0), x1, x2, x3)) -> c5(U11'(mark(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_mark(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U11(z0, z1, z2, z3), x1, x2, x3)) -> c5(U11'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_U12(z0, z1), x1, x2, x3)) -> c5(U11'(U12(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_U12(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_splitAt(z0, z1), x1, x2, x3)) -> c5(U11'(splitAt(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_pair(z0, z1), x1, x2, x3)) -> c5(U11'(pair(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_pair(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_cons(z0, z1), x1, x2, x3)) -> c5(U11'(cons(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_cons(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_afterNth(z0, z1), x1, x2, x3)) -> c5(U11'(afterNth(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_snd(z0), x1, x2, x3)) -> c5(U11'(snd(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_snd(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_and(z0, z1), x1, x2, x3)) -> c5(U11'(and(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_and(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_fst(z0), x1, x2, x3)) -> c5(U11'(fst(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_fst(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_head(z0), x1, x2, x3)) -> c5(U11'(head(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_head(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_natsFrom(z0), x1, x2, x3)) -> c5(U11'(natsFrom(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_natsFrom(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_s(z0), x1, x2, x3)) -> c5(U11'(s(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_s(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_sel(z0, z1), x1, x2, x3)) -> c5(U11'(sel(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_sel(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_tail(z0), x1, x2, x3)) -> c5(U11'(tail(encArg(z0)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_tail(z0)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(cons_take(z0, z1), x1, x2, x3)) -> c5(U11'(take(encArg(z0), encArg(z1)), encArg(x1), encArg(x2), encArg(x3)), ENCARG(cons_take(z0, z1)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, x1, x2, tt)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), tt), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, 0)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), 0), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, x2, nil)) -> c5(U11'(encArg(x0), encArg(x1), encArg(x2), nil), ENCARG(x0), ENCARG(x1), ENCARG(x2)) ENCARG(cons_U11(x0, x1, tt, x3)) -> c5(U11'(encArg(x0), encArg(x1), tt, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, 0, x3)) -> c5(U11'(encArg(x0), encArg(x1), 0, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, x1, nil, x3)) -> c5(U11'(encArg(x0), encArg(x1), nil, encArg(x3)), ENCARG(x0), ENCARG(x1), ENCARG(x3)) ENCARG(cons_U11(x0, tt, x2, x3)) -> c5(U11'(encArg(x0), tt, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, 0, x2, x3)) -> c5(U11'(encArg(x0), 0, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(x0, nil, x2, x3)) -> c5(U11'(encArg(x0), nil, encArg(x2), encArg(x3)), ENCARG(x0), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(tt, x1, x2, x3)) -> c5(U11'(tt, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(0, x1, x2, x3)) -> c5(U11'(0, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U11(nil, x1, x2, x3)) -> c5(U11'(nil, encArg(x1), encArg(x2), encArg(x3)), ENCARG(x1), ENCARG(x2), ENCARG(x3)) ENCARG(cons_U12(x0, cons_active(z0))) -> c6(U12'(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_U12(x0, cons_mark(z0))) -> c6(U12'(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_U12(x0, cons_U11(z0, z1, z2, z3))) -> c6(U12'(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_U12(x0, cons_U12(z0, z1))) -> c6(U12'(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_U12(x0, cons_splitAt(z0, z1))) -> c6(U12'(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_U12(x0, cons_pair(z0, z1))) -> c6(U12'(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_U12(x0, cons_cons(z0, z1))) -> c6(U12'(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_U12(x0, cons_afterNth(z0, z1))) -> c6(U12'(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_U12(x0, cons_snd(z0))) -> c6(U12'(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_U12(x0, cons_and(z0, z1))) -> c6(U12'(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_U12(x0, cons_fst(z0))) -> c6(U12'(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_U12(x0, cons_head(z0))) -> c6(U12'(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_U12(x0, cons_natsFrom(z0))) -> c6(U12'(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_U12(x0, cons_s(z0))) -> c6(U12'(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_U12(x0, cons_sel(z0, z1))) -> c6(U12'(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_U12(x0, cons_tail(z0))) -> c6(U12'(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_U12(x0, cons_take(z0, z1))) -> c6(U12'(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_U12(cons_active(z0), x1)) -> c6(U12'(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_mark(z0), x1)) -> c6(U12'(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_U11(z0, z1, z2, z3), x1)) -> c6(U12'(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_U12(cons_U12(z0, z1), x1)) -> c6(U12'(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_splitAt(z0, z1), x1)) -> c6(U12'(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_pair(z0, z1), x1)) -> c6(U12'(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_cons(z0, z1), x1)) -> c6(U12'(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_afterNth(z0, z1), x1)) -> c6(U12'(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_snd(z0), x1)) -> c6(U12'(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_and(z0, z1), x1)) -> c6(U12'(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_fst(z0), x1)) -> c6(U12'(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_head(z0), x1)) -> c6(U12'(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_natsFrom(z0), x1)) -> c6(U12'(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_s(z0), x1)) -> c6(U12'(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_sel(z0, z1), x1)) -> c6(U12'(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(cons_tail(z0), x1)) -> c6(U12'(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_U12(cons_take(z0, z1), x1)) -> c6(U12'(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_U12(x0, tt)) -> c6(U12'(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_U12(x0, 0)) -> c6(U12'(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_U12(x0, nil)) -> c6(U12'(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_U12(tt, x1)) -> c6(U12'(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(0, x1)) -> c6(U12'(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_U12(nil, x1)) -> c6(U12'(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, cons_active(z0))) -> c7(SPLITAT(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_splitAt(x0, cons_mark(z0))) -> c7(SPLITAT(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_splitAt(x0, cons_U11(z0, z1, z2, z3))) -> c7(SPLITAT(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_splitAt(x0, cons_U12(z0, z1))) -> c7(SPLITAT(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_splitAt(x0, cons_splitAt(z0, z1))) -> c7(SPLITAT(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_splitAt(x0, cons_pair(z0, z1))) -> c7(SPLITAT(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_splitAt(x0, cons_cons(z0, z1))) -> c7(SPLITAT(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_splitAt(x0, cons_afterNth(z0, z1))) -> c7(SPLITAT(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_splitAt(x0, cons_snd(z0))) -> c7(SPLITAT(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_splitAt(x0, cons_and(z0, z1))) -> c7(SPLITAT(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_splitAt(x0, cons_fst(z0))) -> c7(SPLITAT(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_splitAt(x0, cons_head(z0))) -> c7(SPLITAT(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_splitAt(x0, cons_natsFrom(z0))) -> c7(SPLITAT(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_splitAt(x0, cons_s(z0))) -> c7(SPLITAT(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_splitAt(x0, cons_sel(z0, z1))) -> c7(SPLITAT(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_splitAt(x0, cons_tail(z0))) -> c7(SPLITAT(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_splitAt(x0, cons_take(z0, z1))) -> c7(SPLITAT(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_splitAt(cons_active(z0), x1)) -> c7(SPLITAT(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_mark(z0), x1)) -> c7(SPLITAT(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U11(z0, z1, z2, z3), x1)) -> c7(SPLITAT(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_splitAt(cons_U12(z0, z1), x1)) -> c7(SPLITAT(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_splitAt(z0, z1), x1)) -> c7(SPLITAT(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_pair(z0, z1), x1)) -> c7(SPLITAT(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_cons(z0, z1), x1)) -> c7(SPLITAT(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_afterNth(z0, z1), x1)) -> c7(SPLITAT(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_snd(z0), x1)) -> c7(SPLITAT(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_and(z0, z1), x1)) -> c7(SPLITAT(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_fst(z0), x1)) -> c7(SPLITAT(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_head(z0), x1)) -> c7(SPLITAT(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_natsFrom(z0), x1)) -> c7(SPLITAT(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_s(z0), x1)) -> c7(SPLITAT(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_sel(z0, z1), x1)) -> c7(SPLITAT(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(cons_tail(z0), x1)) -> c7(SPLITAT(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_splitAt(cons_take(z0, z1), x1)) -> c7(SPLITAT(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_splitAt(x0, tt)) -> c7(SPLITAT(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_splitAt(x0, 0)) -> c7(SPLITAT(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_splitAt(x0, nil)) -> c7(SPLITAT(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_splitAt(tt, x1)) -> c7(SPLITAT(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(0, x1)) -> c7(SPLITAT(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_splitAt(nil, x1)) -> c7(SPLITAT(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(x0, cons_active(z0))) -> c8(PAIR(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_pair(x0, cons_mark(z0))) -> c8(PAIR(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_pair(x0, cons_U11(z0, z1, z2, z3))) -> c8(PAIR(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_pair(x0, cons_U12(z0, z1))) -> c8(PAIR(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_pair(x0, cons_splitAt(z0, z1))) -> c8(PAIR(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_pair(x0, cons_pair(z0, z1))) -> c8(PAIR(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_pair(x0, cons_cons(z0, z1))) -> c8(PAIR(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_pair(x0, cons_afterNth(z0, z1))) -> c8(PAIR(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_pair(x0, cons_snd(z0))) -> c8(PAIR(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_pair(x0, cons_and(z0, z1))) -> c8(PAIR(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_pair(x0, cons_fst(z0))) -> c8(PAIR(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_pair(x0, cons_head(z0))) -> c8(PAIR(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_pair(x0, cons_natsFrom(z0))) -> c8(PAIR(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_pair(x0, cons_s(z0))) -> c8(PAIR(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_pair(x0, cons_sel(z0, z1))) -> c8(PAIR(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_pair(x0, cons_tail(z0))) -> c8(PAIR(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_pair(x0, cons_take(z0, z1))) -> c8(PAIR(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_pair(cons_active(z0), x1)) -> c8(PAIR(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_mark(z0), x1)) -> c8(PAIR(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_U11(z0, z1, z2, z3), x1)) -> c8(PAIR(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_pair(cons_U12(z0, z1), x1)) -> c8(PAIR(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_splitAt(z0, z1), x1)) -> c8(PAIR(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_pair(z0, z1), x1)) -> c8(PAIR(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_cons(z0, z1), x1)) -> c8(PAIR(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_afterNth(z0, z1), x1)) -> c8(PAIR(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_snd(z0), x1)) -> c8(PAIR(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_and(z0, z1), x1)) -> c8(PAIR(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_fst(z0), x1)) -> c8(PAIR(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_head(z0), x1)) -> c8(PAIR(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_natsFrom(z0), x1)) -> c8(PAIR(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_s(z0), x1)) -> c8(PAIR(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_sel(z0, z1), x1)) -> c8(PAIR(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(cons_tail(z0), x1)) -> c8(PAIR(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_pair(cons_take(z0, z1), x1)) -> c8(PAIR(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_pair(x0, tt)) -> c8(PAIR(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_pair(x0, 0)) -> c8(PAIR(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_pair(x0, nil)) -> c8(PAIR(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_pair(tt, x1)) -> c8(PAIR(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(0, x1)) -> c8(PAIR(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_pair(nil, x1)) -> c8(PAIR(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(x0, cons_active(z0))) -> c9(CONS(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_cons(x0, cons_mark(z0))) -> c9(CONS(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_cons(x0, cons_U11(z0, z1, z2, z3))) -> c9(CONS(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_cons(x0, cons_U12(z0, z1))) -> c9(CONS(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_cons(x0, cons_splitAt(z0, z1))) -> c9(CONS(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_cons(x0, cons_pair(z0, z1))) -> c9(CONS(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_cons(x0, cons_cons(z0, z1))) -> c9(CONS(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_cons(x0, cons_afterNth(z0, z1))) -> c9(CONS(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_cons(x0, cons_snd(z0))) -> c9(CONS(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_cons(x0, cons_and(z0, z1))) -> c9(CONS(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_cons(x0, cons_fst(z0))) -> c9(CONS(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_cons(x0, cons_head(z0))) -> c9(CONS(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_cons(x0, cons_natsFrom(z0))) -> c9(CONS(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_cons(x0, cons_s(z0))) -> c9(CONS(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_cons(x0, cons_sel(z0, z1))) -> c9(CONS(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_cons(x0, cons_tail(z0))) -> c9(CONS(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_cons(x0, cons_take(z0, z1))) -> c9(CONS(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_cons(cons_active(z0), x1)) -> c9(CONS(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_mark(z0), x1)) -> c9(CONS(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_U11(z0, z1, z2, z3), x1)) -> c9(CONS(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_cons(cons_U12(z0, z1), x1)) -> c9(CONS(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_splitAt(z0, z1), x1)) -> c9(CONS(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_pair(z0, z1), x1)) -> c9(CONS(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_cons(z0, z1), x1)) -> c9(CONS(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_afterNth(z0, z1), x1)) -> c9(CONS(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_snd(z0), x1)) -> c9(CONS(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_and(z0, z1), x1)) -> c9(CONS(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_fst(z0), x1)) -> c9(CONS(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_head(z0), x1)) -> c9(CONS(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_natsFrom(z0), x1)) -> c9(CONS(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_s(z0), x1)) -> c9(CONS(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_sel(z0, z1), x1)) -> c9(CONS(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(cons_tail(z0), x1)) -> c9(CONS(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_cons(cons_take(z0, z1), x1)) -> c9(CONS(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_cons(x0, tt)) -> c9(CONS(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_cons(x0, 0)) -> c9(CONS(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_cons(x0, nil)) -> c9(CONS(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_cons(tt, x1)) -> c9(CONS(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(0, x1)) -> c9(CONS(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_cons(nil, x1)) -> c9(CONS(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, cons_active(z0))) -> c10(AFTERNTH(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_afterNth(x0, cons_mark(z0))) -> c10(AFTERNTH(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_afterNth(x0, cons_U11(z0, z1, z2, z3))) -> c10(AFTERNTH(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_afterNth(x0, cons_U12(z0, z1))) -> c10(AFTERNTH(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_afterNth(x0, cons_splitAt(z0, z1))) -> c10(AFTERNTH(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_afterNth(x0, cons_pair(z0, z1))) -> c10(AFTERNTH(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_afterNth(x0, cons_cons(z0, z1))) -> c10(AFTERNTH(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_afterNth(x0, cons_afterNth(z0, z1))) -> c10(AFTERNTH(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_afterNth(x0, cons_snd(z0))) -> c10(AFTERNTH(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_afterNth(x0, cons_and(z0, z1))) -> c10(AFTERNTH(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_afterNth(x0, cons_fst(z0))) -> c10(AFTERNTH(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_afterNth(x0, cons_head(z0))) -> c10(AFTERNTH(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_afterNth(x0, cons_natsFrom(z0))) -> c10(AFTERNTH(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_afterNth(x0, cons_s(z0))) -> c10(AFTERNTH(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_afterNth(x0, cons_sel(z0, z1))) -> c10(AFTERNTH(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_afterNth(x0, cons_tail(z0))) -> c10(AFTERNTH(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_afterNth(x0, cons_take(z0, z1))) -> c10(AFTERNTH(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_afterNth(cons_active(z0), x1)) -> c10(AFTERNTH(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_mark(z0), x1)) -> c10(AFTERNTH(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U11(z0, z1, z2, z3), x1)) -> c10(AFTERNTH(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_afterNth(cons_U12(z0, z1), x1)) -> c10(AFTERNTH(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_splitAt(z0, z1), x1)) -> c10(AFTERNTH(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_pair(z0, z1), x1)) -> c10(AFTERNTH(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_cons(z0, z1), x1)) -> c10(AFTERNTH(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_afterNth(z0, z1), x1)) -> c10(AFTERNTH(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_snd(z0), x1)) -> c10(AFTERNTH(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_and(z0, z1), x1)) -> c10(AFTERNTH(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_fst(z0), x1)) -> c10(AFTERNTH(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_head(z0), x1)) -> c10(AFTERNTH(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_natsFrom(z0), x1)) -> c10(AFTERNTH(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_s(z0), x1)) -> c10(AFTERNTH(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_sel(z0, z1), x1)) -> c10(AFTERNTH(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(cons_tail(z0), x1)) -> c10(AFTERNTH(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_afterNth(cons_take(z0, z1), x1)) -> c10(AFTERNTH(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_afterNth(x0, tt)) -> c10(AFTERNTH(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_afterNth(x0, 0)) -> c10(AFTERNTH(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_afterNth(x0, nil)) -> c10(AFTERNTH(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_afterNth(tt, x1)) -> c10(AFTERNTH(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(0, x1)) -> c10(AFTERNTH(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_afterNth(nil, x1)) -> c10(AFTERNTH(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_snd(cons_active(z0))) -> c11(SND(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_snd(cons_mark(z0))) -> c11(SND(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_snd(cons_U11(z0, z1, z2, z3))) -> c11(SND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_snd(cons_U12(z0, z1))) -> c11(SND(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_snd(cons_splitAt(z0, z1))) -> c11(SND(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_snd(cons_pair(z0, z1))) -> c11(SND(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_snd(cons_cons(z0, z1))) -> c11(SND(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_snd(cons_afterNth(z0, z1))) -> c11(SND(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_snd(cons_snd(z0))) -> c11(SND(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_snd(cons_and(z0, z1))) -> c11(SND(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_snd(cons_fst(z0))) -> c11(SND(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_snd(cons_head(z0))) -> c11(SND(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_snd(cons_natsFrom(z0))) -> c11(SND(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_snd(cons_s(z0))) -> c11(SND(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_snd(cons_sel(z0, z1))) -> c11(SND(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_snd(cons_tail(z0))) -> c11(SND(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_snd(cons_take(z0, z1))) -> c11(SND(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(x0, cons_active(z0))) -> c12(AND(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_and(x0, cons_mark(z0))) -> c12(AND(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_and(x0, cons_U11(z0, z1, z2, z3))) -> c12(AND(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_and(x0, cons_U12(z0, z1))) -> c12(AND(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_and(x0, cons_splitAt(z0, z1))) -> c12(AND(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_and(x0, cons_pair(z0, z1))) -> c12(AND(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_and(x0, cons_cons(z0, z1))) -> c12(AND(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_and(x0, cons_afterNth(z0, z1))) -> c12(AND(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_and(x0, cons_snd(z0))) -> c12(AND(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_and(x0, cons_and(z0, z1))) -> c12(AND(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_and(x0, cons_fst(z0))) -> c12(AND(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_and(x0, cons_head(z0))) -> c12(AND(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_and(x0, cons_natsFrom(z0))) -> c12(AND(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_and(x0, cons_s(z0))) -> c12(AND(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_and(x0, cons_sel(z0, z1))) -> c12(AND(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_and(x0, cons_tail(z0))) -> c12(AND(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_and(x0, cons_take(z0, z1))) -> c12(AND(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_and(cons_active(z0), x1)) -> c12(AND(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_and(cons_mark(z0), x1)) -> c12(AND(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_and(cons_U11(z0, z1, z2, z3), x1)) -> c12(AND(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_and(cons_U12(z0, z1), x1)) -> c12(AND(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_splitAt(z0, z1), x1)) -> c12(AND(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_pair(z0, z1), x1)) -> c12(AND(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_cons(z0, z1), x1)) -> c12(AND(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_afterNth(z0, z1), x1)) -> c12(AND(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_snd(z0), x1)) -> c12(AND(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_and(cons_and(z0, z1), x1)) -> c12(AND(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_fst(z0), x1)) -> c12(AND(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_and(cons_head(z0), x1)) -> c12(AND(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_and(cons_natsFrom(z0), x1)) -> c12(AND(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_and(cons_s(z0), x1)) -> c12(AND(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_and(cons_sel(z0, z1), x1)) -> c12(AND(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_and(cons_tail(z0), x1)) -> c12(AND(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_and(cons_take(z0, z1), x1)) -> c12(AND(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_and(x0, tt)) -> c12(AND(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_and(x0, 0)) -> c12(AND(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_and(x0, nil)) -> c12(AND(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_and(tt, x1)) -> c12(AND(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(0, x1)) -> c12(AND(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_and(nil, x1)) -> c12(AND(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_fst(cons_active(z0))) -> c13(FST(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_fst(cons_mark(z0))) -> c13(FST(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_fst(cons_U11(z0, z1, z2, z3))) -> c13(FST(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_fst(cons_U12(z0, z1))) -> c13(FST(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_fst(cons_splitAt(z0, z1))) -> c13(FST(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_fst(cons_pair(z0, z1))) -> c13(FST(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_fst(cons_cons(z0, z1))) -> c13(FST(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_fst(cons_afterNth(z0, z1))) -> c13(FST(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_fst(cons_snd(z0))) -> c13(FST(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_fst(cons_and(z0, z1))) -> c13(FST(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_fst(cons_fst(z0))) -> c13(FST(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_fst(cons_head(z0))) -> c13(FST(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_fst(cons_natsFrom(z0))) -> c13(FST(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_fst(cons_s(z0))) -> c13(FST(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_fst(cons_sel(z0, z1))) -> c13(FST(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_fst(cons_tail(z0))) -> c13(FST(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_fst(cons_take(z0, z1))) -> c13(FST(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_head(cons_active(z0))) -> c14(HEAD(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_head(cons_mark(z0))) -> c14(HEAD(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_head(cons_U11(z0, z1, z2, z3))) -> c14(HEAD(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_head(cons_U12(z0, z1))) -> c14(HEAD(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_head(cons_splitAt(z0, z1))) -> c14(HEAD(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_head(cons_pair(z0, z1))) -> c14(HEAD(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_head(cons_cons(z0, z1))) -> c14(HEAD(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_head(cons_afterNth(z0, z1))) -> c14(HEAD(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_head(cons_snd(z0))) -> c14(HEAD(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_head(cons_and(z0, z1))) -> c14(HEAD(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_head(cons_fst(z0))) -> c14(HEAD(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_head(cons_head(z0))) -> c14(HEAD(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_head(cons_natsFrom(z0))) -> c14(HEAD(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_head(cons_s(z0))) -> c14(HEAD(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_head(cons_sel(z0, z1))) -> c14(HEAD(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_head(cons_tail(z0))) -> c14(HEAD(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_head(cons_take(z0, z1))) -> c14(HEAD(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_natsFrom(cons_active(z0))) -> c15(NATSFROM(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_natsFrom(cons_mark(z0))) -> c15(NATSFROM(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_natsFrom(cons_U11(z0, z1, z2, z3))) -> c15(NATSFROM(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_natsFrom(cons_U12(z0, z1))) -> c15(NATSFROM(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_natsFrom(cons_splitAt(z0, z1))) -> c15(NATSFROM(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_natsFrom(cons_pair(z0, z1))) -> c15(NATSFROM(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_natsFrom(cons_cons(z0, z1))) -> c15(NATSFROM(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_natsFrom(cons_afterNth(z0, z1))) -> c15(NATSFROM(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_natsFrom(cons_snd(z0))) -> c15(NATSFROM(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_natsFrom(cons_and(z0, z1))) -> c15(NATSFROM(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_natsFrom(cons_fst(z0))) -> c15(NATSFROM(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_natsFrom(cons_head(z0))) -> c15(NATSFROM(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_natsFrom(cons_natsFrom(z0))) -> c15(NATSFROM(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_natsFrom(cons_s(z0))) -> c15(NATSFROM(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_natsFrom(cons_sel(z0, z1))) -> c15(NATSFROM(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_natsFrom(cons_tail(z0))) -> c15(NATSFROM(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_natsFrom(cons_take(z0, z1))) -> c15(NATSFROM(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_s(cons_active(z0))) -> c16(S(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_s(cons_mark(z0))) -> c16(S(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_s(cons_U11(z0, z1, z2, z3))) -> c16(S(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_s(cons_U12(z0, z1))) -> c16(S(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_s(cons_splitAt(z0, z1))) -> c16(S(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_s(cons_pair(z0, z1))) -> c16(S(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_s(cons_cons(z0, z1))) -> c16(S(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_s(cons_afterNth(z0, z1))) -> c16(S(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_s(cons_snd(z0))) -> c16(S(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_s(cons_and(z0, z1))) -> c16(S(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_s(cons_fst(z0))) -> c16(S(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_s(cons_head(z0))) -> c16(S(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_s(cons_natsFrom(z0))) -> c16(S(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_s(cons_s(z0))) -> c16(S(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_s(cons_sel(z0, z1))) -> c16(S(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_s(cons_tail(z0))) -> c16(S(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_s(cons_take(z0, z1))) -> c16(S(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(x0, cons_active(z0))) -> c17(SEL(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_sel(x0, cons_mark(z0))) -> c17(SEL(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_sel(x0, cons_U11(z0, z1, z2, z3))) -> c17(SEL(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_sel(x0, cons_U12(z0, z1))) -> c17(SEL(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_sel(x0, cons_splitAt(z0, z1))) -> c17(SEL(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_sel(x0, cons_pair(z0, z1))) -> c17(SEL(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_sel(x0, cons_cons(z0, z1))) -> c17(SEL(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_sel(x0, cons_afterNth(z0, z1))) -> c17(SEL(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_sel(x0, cons_snd(z0))) -> c17(SEL(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_sel(x0, cons_and(z0, z1))) -> c17(SEL(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_sel(x0, cons_fst(z0))) -> c17(SEL(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_sel(x0, cons_head(z0))) -> c17(SEL(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_sel(x0, cons_natsFrom(z0))) -> c17(SEL(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_sel(x0, cons_s(z0))) -> c17(SEL(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_sel(x0, cons_sel(z0, z1))) -> c17(SEL(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_sel(x0, cons_tail(z0))) -> c17(SEL(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_sel(x0, cons_take(z0, z1))) -> c17(SEL(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_sel(cons_active(z0), x1)) -> c17(SEL(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_mark(z0), x1)) -> c17(SEL(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_U11(z0, z1, z2, z3), x1)) -> c17(SEL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_sel(cons_U12(z0, z1), x1)) -> c17(SEL(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_splitAt(z0, z1), x1)) -> c17(SEL(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_pair(z0, z1), x1)) -> c17(SEL(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_cons(z0, z1), x1)) -> c17(SEL(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_afterNth(z0, z1), x1)) -> c17(SEL(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_snd(z0), x1)) -> c17(SEL(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_and(z0, z1), x1)) -> c17(SEL(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_fst(z0), x1)) -> c17(SEL(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_head(z0), x1)) -> c17(SEL(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_natsFrom(z0), x1)) -> c17(SEL(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_s(z0), x1)) -> c17(SEL(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_sel(z0, z1), x1)) -> c17(SEL(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(cons_tail(z0), x1)) -> c17(SEL(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_sel(cons_take(z0, z1), x1)) -> c17(SEL(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_sel(x0, tt)) -> c17(SEL(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_sel(x0, 0)) -> c17(SEL(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_sel(x0, nil)) -> c17(SEL(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_sel(tt, x1)) -> c17(SEL(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(0, x1)) -> c17(SEL(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_sel(nil, x1)) -> c17(SEL(nil, encArg(x1)), ENCARG(x1)) ENCARG(cons_tail(cons_active(z0))) -> c18(TAIL(active(encArg(z0))), ENCARG(cons_active(z0))) ENCARG(cons_tail(cons_mark(z0))) -> c18(TAIL(mark(encArg(z0))), ENCARG(cons_mark(z0))) ENCARG(cons_tail(cons_U11(z0, z1, z2, z3))) -> c18(TAIL(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_tail(cons_U12(z0, z1))) -> c18(TAIL(U12(encArg(z0), encArg(z1))), ENCARG(cons_U12(z0, z1))) ENCARG(cons_tail(cons_splitAt(z0, z1))) -> c18(TAIL(splitAt(encArg(z0), encArg(z1))), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_tail(cons_pair(z0, z1))) -> c18(TAIL(pair(encArg(z0), encArg(z1))), ENCARG(cons_pair(z0, z1))) ENCARG(cons_tail(cons_cons(z0, z1))) -> c18(TAIL(cons(encArg(z0), encArg(z1))), ENCARG(cons_cons(z0, z1))) ENCARG(cons_tail(cons_afterNth(z0, z1))) -> c18(TAIL(afterNth(encArg(z0), encArg(z1))), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_tail(cons_snd(z0))) -> c18(TAIL(snd(encArg(z0))), ENCARG(cons_snd(z0))) ENCARG(cons_tail(cons_and(z0, z1))) -> c18(TAIL(and(encArg(z0), encArg(z1))), ENCARG(cons_and(z0, z1))) ENCARG(cons_tail(cons_fst(z0))) -> c18(TAIL(fst(encArg(z0))), ENCARG(cons_fst(z0))) ENCARG(cons_tail(cons_head(z0))) -> c18(TAIL(head(encArg(z0))), ENCARG(cons_head(z0))) ENCARG(cons_tail(cons_natsFrom(z0))) -> c18(TAIL(natsFrom(encArg(z0))), ENCARG(cons_natsFrom(z0))) ENCARG(cons_tail(cons_s(z0))) -> c18(TAIL(s(encArg(z0))), ENCARG(cons_s(z0))) ENCARG(cons_tail(cons_sel(z0, z1))) -> c18(TAIL(sel(encArg(z0), encArg(z1))), ENCARG(cons_sel(z0, z1))) ENCARG(cons_tail(cons_tail(z0))) -> c18(TAIL(tail(encArg(z0))), ENCARG(cons_tail(z0))) ENCARG(cons_tail(cons_take(z0, z1))) -> c18(TAIL(take(encArg(z0), encArg(z1))), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(x0, cons_active(z0))) -> c19(TAKE(encArg(x0), active(encArg(z0))), ENCARG(x0), ENCARG(cons_active(z0))) ENCARG(cons_take(x0, cons_mark(z0))) -> c19(TAKE(encArg(x0), mark(encArg(z0))), ENCARG(x0), ENCARG(cons_mark(z0))) ENCARG(cons_take(x0, cons_U11(z0, z1, z2, z3))) -> c19(TAKE(encArg(x0), U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3))), ENCARG(x0), ENCARG(cons_U11(z0, z1, z2, z3))) ENCARG(cons_take(x0, cons_U12(z0, z1))) -> c19(TAKE(encArg(x0), U12(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_U12(z0, z1))) ENCARG(cons_take(x0, cons_splitAt(z0, z1))) -> c19(TAKE(encArg(x0), splitAt(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_splitAt(z0, z1))) ENCARG(cons_take(x0, cons_pair(z0, z1))) -> c19(TAKE(encArg(x0), pair(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_pair(z0, z1))) ENCARG(cons_take(x0, cons_cons(z0, z1))) -> c19(TAKE(encArg(x0), cons(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_cons(z0, z1))) ENCARG(cons_take(x0, cons_afterNth(z0, z1))) -> c19(TAKE(encArg(x0), afterNth(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_afterNth(z0, z1))) ENCARG(cons_take(x0, cons_snd(z0))) -> c19(TAKE(encArg(x0), snd(encArg(z0))), ENCARG(x0), ENCARG(cons_snd(z0))) ENCARG(cons_take(x0, cons_and(z0, z1))) -> c19(TAKE(encArg(x0), and(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_and(z0, z1))) ENCARG(cons_take(x0, cons_fst(z0))) -> c19(TAKE(encArg(x0), fst(encArg(z0))), ENCARG(x0), ENCARG(cons_fst(z0))) ENCARG(cons_take(x0, cons_head(z0))) -> c19(TAKE(encArg(x0), head(encArg(z0))), ENCARG(x0), ENCARG(cons_head(z0))) ENCARG(cons_take(x0, cons_natsFrom(z0))) -> c19(TAKE(encArg(x0), natsFrom(encArg(z0))), ENCARG(x0), ENCARG(cons_natsFrom(z0))) ENCARG(cons_take(x0, cons_s(z0))) -> c19(TAKE(encArg(x0), s(encArg(z0))), ENCARG(x0), ENCARG(cons_s(z0))) ENCARG(cons_take(x0, cons_sel(z0, z1))) -> c19(TAKE(encArg(x0), sel(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_sel(z0, z1))) ENCARG(cons_take(x0, cons_tail(z0))) -> c19(TAKE(encArg(x0), tail(encArg(z0))), ENCARG(x0), ENCARG(cons_tail(z0))) ENCARG(cons_take(x0, cons_take(z0, z1))) -> c19(TAKE(encArg(x0), take(encArg(z0), encArg(z1))), ENCARG(x0), ENCARG(cons_take(z0, z1))) ENCARG(cons_take(cons_active(z0), x1)) -> c19(TAKE(active(encArg(z0)), encArg(x1)), ENCARG(cons_active(z0)), ENCARG(x1)) ENCARG(cons_take(cons_mark(z0), x1)) -> c19(TAKE(mark(encArg(z0)), encArg(x1)), ENCARG(cons_mark(z0)), ENCARG(x1)) ENCARG(cons_take(cons_U11(z0, z1, z2, z3), x1)) -> c19(TAKE(U11(encArg(z0), encArg(z1), encArg(z2), encArg(z3)), encArg(x1)), ENCARG(cons_U11(z0, z1, z2, z3)), ENCARG(x1)) ENCARG(cons_take(cons_U12(z0, z1), x1)) -> c19(TAKE(U12(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_U12(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_splitAt(z0, z1), x1)) -> c19(TAKE(splitAt(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_splitAt(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_pair(z0, z1), x1)) -> c19(TAKE(pair(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_pair(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_cons(z0, z1), x1)) -> c19(TAKE(cons(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_cons(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_afterNth(z0, z1), x1)) -> c19(TAKE(afterNth(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_afterNth(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_snd(z0), x1)) -> c19(TAKE(snd(encArg(z0)), encArg(x1)), ENCARG(cons_snd(z0)), ENCARG(x1)) ENCARG(cons_take(cons_and(z0, z1), x1)) -> c19(TAKE(and(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_and(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_fst(z0), x1)) -> c19(TAKE(fst(encArg(z0)), encArg(x1)), ENCARG(cons_fst(z0)), ENCARG(x1)) ENCARG(cons_take(cons_head(z0), x1)) -> c19(TAKE(head(encArg(z0)), encArg(x1)), ENCARG(cons_head(z0)), ENCARG(x1)) ENCARG(cons_take(cons_natsFrom(z0), x1)) -> c19(TAKE(natsFrom(encArg(z0)), encArg(x1)), ENCARG(cons_natsFrom(z0)), ENCARG(x1)) ENCARG(cons_take(cons_s(z0), x1)) -> c19(TAKE(s(encArg(z0)), encArg(x1)), ENCARG(cons_s(z0)), ENCARG(x1)) ENCARG(cons_take(cons_sel(z0, z1), x1)) -> c19(TAKE(sel(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_sel(z0, z1)), ENCARG(x1)) ENCARG(cons_take(cons_tail(z0), x1)) -> c19(TAKE(tail(encArg(z0)), encArg(x1)), ENCARG(cons_tail(z0)), ENCARG(x1)) ENCARG(cons_take(cons_take(z0, z1), x1)) -> c19(TAKE(take(encArg(z0), encArg(z1)), encArg(x1)), ENCARG(cons_take(z0, z1)), ENCARG(x1)) ENCARG(cons_take(x0, tt)) -> c19(TAKE(encArg(x0), tt), ENCARG(x0)) ENCARG(cons_take(x0, 0)) -> c19(TAKE(encArg(x0), 0), ENCARG(x0)) ENCARG(cons_take(x0, nil)) -> c19(TAKE(encArg(x0), nil), ENCARG(x0)) ENCARG(cons_take(tt, x1)) -> c19(TAKE(tt, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(0, x1)) -> c19(TAKE(0, encArg(x1)), ENCARG(x1)) ENCARG(cons_take(nil, x1)) -> c19(TAKE(nil, encArg(x1)), ENCARG(x1)) MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(pair(z0, x1)) -> c57(ACTIVE(pair(z0, mark(x1))), PAIR(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(pair(x0, z1)) -> c57(ACTIVE(pair(mark(x0), z1)), PAIR(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(pair(x0, U11(z0, z1, z2, z3))) -> c57(ACTIVE(pair(mark(x0), active(U11(mark(z0), z1, z2, z3)))), PAIR(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(pair(x0, tt)) -> c57(ACTIVE(pair(mark(x0), active(tt))), PAIR(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(pair(x0, U12(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(U12(mark(z0), z1)))), PAIR(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(pair(x0, splitAt(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(splitAt(mark(z0), mark(z1))))), PAIR(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(pair(x0, pair(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(pair(mark(z0), mark(z1))))), PAIR(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(pair(x0, cons(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(cons(mark(z0), z1)))), PAIR(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(pair(x0, afterNth(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(afterNth(mark(z0), mark(z1))))), PAIR(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(pair(x0, snd(z0))) -> c57(ACTIVE(pair(mark(x0), active(snd(mark(z0))))), PAIR(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(pair(x0, and(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(and(mark(z0), z1)))), PAIR(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(pair(x0, fst(z0))) -> c57(ACTIVE(pair(mark(x0), active(fst(mark(z0))))), PAIR(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(pair(x0, head(z0))) -> c57(ACTIVE(pair(mark(x0), active(head(mark(z0))))), PAIR(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(pair(x0, natsFrom(z0))) -> c57(ACTIVE(pair(mark(x0), active(natsFrom(mark(z0))))), PAIR(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(pair(x0, s(z0))) -> c57(ACTIVE(pair(mark(x0), active(s(mark(z0))))), PAIR(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(pair(x0, sel(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(sel(mark(z0), mark(z1))))), PAIR(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(pair(x0, 0)) -> c57(ACTIVE(pair(mark(x0), active(0))), PAIR(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(pair(x0, nil)) -> c57(ACTIVE(pair(mark(x0), active(nil))), PAIR(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(pair(x0, tail(z0))) -> c57(ACTIVE(pair(mark(x0), active(tail(mark(z0))))), PAIR(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(pair(x0, take(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(take(mark(z0), mark(z1))))), PAIR(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(pair(U11(z0, z1, z2, z3), x1)) -> c57(ACTIVE(pair(active(U11(mark(z0), z1, z2, z3)), mark(x1))), PAIR(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(pair(tt, x1)) -> c57(ACTIVE(pair(active(tt), mark(x1))), PAIR(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(pair(U12(z0, z1), x1)) -> c57(ACTIVE(pair(active(U12(mark(z0), z1)), mark(x1))), PAIR(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(pair(splitAt(z0, z1), x1)) -> c57(ACTIVE(pair(active(splitAt(mark(z0), mark(z1))), mark(x1))), PAIR(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(pair(pair(z0, z1), x1)) -> c57(ACTIVE(pair(active(pair(mark(z0), mark(z1))), mark(x1))), PAIR(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(pair(cons(z0, z1), x1)) -> c57(ACTIVE(pair(active(cons(mark(z0), z1)), mark(x1))), PAIR(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(pair(afterNth(z0, z1), x1)) -> c57(ACTIVE(pair(active(afterNth(mark(z0), mark(z1))), mark(x1))), PAIR(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(pair(snd(z0), x1)) -> c57(ACTIVE(pair(active(snd(mark(z0))), mark(x1))), PAIR(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(pair(and(z0, z1), x1)) -> c57(ACTIVE(pair(active(and(mark(z0), z1)), mark(x1))), PAIR(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(pair(fst(z0), x1)) -> c57(ACTIVE(pair(active(fst(mark(z0))), mark(x1))), PAIR(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(pair(head(z0), x1)) -> c57(ACTIVE(pair(active(head(mark(z0))), mark(x1))), PAIR(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(pair(natsFrom(z0), x1)) -> c57(ACTIVE(pair(active(natsFrom(mark(z0))), mark(x1))), PAIR(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(pair(s(z0), x1)) -> c57(ACTIVE(pair(active(s(mark(z0))), mark(x1))), PAIR(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(pair(sel(z0, z1), x1)) -> c57(ACTIVE(pair(active(sel(mark(z0), mark(z1))), mark(x1))), PAIR(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(pair(0, x1)) -> c57(ACTIVE(pair(active(0), mark(x1))), PAIR(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(pair(nil, x1)) -> c57(ACTIVE(pair(active(nil), mark(x1))), PAIR(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(pair(tail(z0), x1)) -> c57(ACTIVE(pair(active(tail(mark(z0))), mark(x1))), PAIR(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(pair(take(z0, z1), x1)) -> c57(ACTIVE(pair(active(take(mark(z0), mark(z1))), mark(x1))), PAIR(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(cons(U11(z0, z1, z2, z3), x1)) -> c58(ACTIVE(cons(active(U11(mark(z0), z1, z2, z3)), x1)), CONS(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(cons(tt, x1)) -> c58(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(U12(z0, z1), x1)) -> c58(ACTIVE(cons(active(U12(mark(z0), z1)), x1)), CONS(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(cons(splitAt(z0, z1), x1)) -> c58(ACTIVE(cons(active(splitAt(mark(z0), mark(z1))), x1)), CONS(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(cons(pair(z0, z1), x1)) -> c58(ACTIVE(cons(active(pair(mark(z0), mark(z1))), x1)), CONS(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(cons(cons(z0, z1), x1)) -> c58(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(afterNth(z0, z1), x1)) -> c58(ACTIVE(cons(active(afterNth(mark(z0), mark(z1))), x1)), CONS(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(cons(snd(z0), x1)) -> c58(ACTIVE(cons(active(snd(mark(z0))), x1)), CONS(mark(snd(z0)), x1), MARK(snd(z0))) MARK(cons(and(z0, z1), x1)) -> c58(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(fst(z0), x1)) -> c58(ACTIVE(cons(active(fst(mark(z0))), x1)), CONS(mark(fst(z0)), x1), MARK(fst(z0))) MARK(cons(head(z0), x1)) -> c58(ACTIVE(cons(active(head(mark(z0))), x1)), CONS(mark(head(z0)), x1), MARK(head(z0))) MARK(cons(natsFrom(z0), x1)) -> c58(ACTIVE(cons(active(natsFrom(mark(z0))), x1)), CONS(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(cons(s(z0), x1)) -> c58(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(sel(z0, z1), x1)) -> c58(ACTIVE(cons(active(sel(mark(z0), mark(z1))), x1)), CONS(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(cons(0, x1)) -> c58(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(nil, x1)) -> c58(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(tail(z0), x1)) -> c58(ACTIVE(cons(active(tail(mark(z0))), x1)), CONS(mark(tail(z0)), x1), MARK(tail(z0))) MARK(cons(take(z0, z1), x1)) -> c58(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(x0, x1)) -> c58(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c58(CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, x1)) -> c59(ACTIVE(afterNth(z0, mark(x1))), AFTERNTH(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(afterNth(x0, z1)) -> c59(ACTIVE(afterNth(mark(x0), z1)), AFTERNTH(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(afterNth(x0, U11(z0, z1, z2, z3))) -> c59(ACTIVE(afterNth(mark(x0), active(U11(mark(z0), z1, z2, z3)))), AFTERNTH(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(afterNth(x0, tt)) -> c59(ACTIVE(afterNth(mark(x0), active(tt))), AFTERNTH(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(afterNth(x0, U12(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(U12(mark(z0), z1)))), AFTERNTH(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(afterNth(x0, splitAt(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(splitAt(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(afterNth(x0, pair(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(pair(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(afterNth(x0, cons(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(cons(mark(z0), z1)))), AFTERNTH(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(afterNth(x0, afterNth(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(afterNth(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(afterNth(x0, snd(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(snd(mark(z0))))), AFTERNTH(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(afterNth(x0, and(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(and(mark(z0), z1)))), AFTERNTH(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(afterNth(x0, fst(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(fst(mark(z0))))), AFTERNTH(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(afterNth(x0, head(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(head(mark(z0))))), AFTERNTH(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(afterNth(x0, natsFrom(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(natsFrom(mark(z0))))), AFTERNTH(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(afterNth(x0, s(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(s(mark(z0))))), AFTERNTH(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(afterNth(x0, sel(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(sel(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(afterNth(x0, 0)) -> c59(ACTIVE(afterNth(mark(x0), active(0))), AFTERNTH(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(afterNth(x0, nil)) -> c59(ACTIVE(afterNth(mark(x0), active(nil))), AFTERNTH(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(afterNth(x0, tail(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(tail(mark(z0))))), AFTERNTH(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(afterNth(x0, take(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(take(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(afterNth(U11(z0, z1, z2, z3), x1)) -> c59(ACTIVE(afterNth(active(U11(mark(z0), z1, z2, z3)), mark(x1))), AFTERNTH(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(afterNth(tt, x1)) -> c59(ACTIVE(afterNth(active(tt), mark(x1))), AFTERNTH(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(afterNth(U12(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(U12(mark(z0), z1)), mark(x1))), AFTERNTH(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(afterNth(splitAt(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(splitAt(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(afterNth(pair(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(pair(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(afterNth(cons(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(cons(mark(z0), z1)), mark(x1))), AFTERNTH(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(afterNth(afterNth(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(afterNth(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(afterNth(snd(z0), x1)) -> c59(ACTIVE(afterNth(active(snd(mark(z0))), mark(x1))), AFTERNTH(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(afterNth(and(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(and(mark(z0), z1)), mark(x1))), AFTERNTH(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(afterNth(fst(z0), x1)) -> c59(ACTIVE(afterNth(active(fst(mark(z0))), mark(x1))), AFTERNTH(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(afterNth(head(z0), x1)) -> c59(ACTIVE(afterNth(active(head(mark(z0))), mark(x1))), AFTERNTH(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(afterNth(natsFrom(z0), x1)) -> c59(ACTIVE(afterNth(active(natsFrom(mark(z0))), mark(x1))), AFTERNTH(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(afterNth(s(z0), x1)) -> c59(ACTIVE(afterNth(active(s(mark(z0))), mark(x1))), AFTERNTH(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(afterNth(sel(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(sel(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(afterNth(0, x1)) -> c59(ACTIVE(afterNth(active(0), mark(x1))), AFTERNTH(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(afterNth(nil, x1)) -> c59(ACTIVE(afterNth(active(nil), mark(x1))), AFTERNTH(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(afterNth(tail(z0), x1)) -> c59(ACTIVE(afterNth(active(tail(mark(z0))), mark(x1))), AFTERNTH(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(afterNth(take(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(take(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) S tuples: ACTIVE(U11(tt, z0, z1, z2)) -> c40(MARK(U12(splitAt(z0, z2), z1)), U12'(splitAt(z0, z2), z1), SPLITAT(z0, z2)) ACTIVE(U12(pair(z0, z1), z2)) -> c41(MARK(pair(cons(z2, z0), z1)), PAIR(cons(z2, z0), z1), CONS(z2, z0)) ACTIVE(and(tt, z0)) -> c43(MARK(z0)) ACTIVE(fst(pair(z0, z1))) -> c44(MARK(z0)) ACTIVE(head(cons(z0, z1))) -> c45(MARK(z0)) ACTIVE(snd(pair(z0, z1))) -> c48(MARK(z1)) ACTIVE(splitAt(0, z0)) -> c49(MARK(pair(nil, z0)), PAIR(nil, z0)) ACTIVE(splitAt(s(z0), cons(z1, z2))) -> c50(MARK(U11(tt, z0, z1, z2)), U11'(tt, z0, z1, z2)) ACTIVE(tail(cons(z0, z1))) -> c51(MARK(z1)) MARK(snd(z0)) -> c60(ACTIVE(snd(mark(z0))), SND(mark(z0)), MARK(z0)) MARK(and(z0, z1)) -> c61(ACTIVE(and(mark(z0), z1)), AND(mark(z0), z1), MARK(z0)) MARK(fst(z0)) -> c62(ACTIVE(fst(mark(z0))), FST(mark(z0)), MARK(z0)) MARK(head(z0)) -> c63(ACTIVE(head(mark(z0))), HEAD(mark(z0)), MARK(z0)) MARK(natsFrom(z0)) -> c64(ACTIVE(natsFrom(mark(z0))), NATSFROM(mark(z0)), MARK(z0)) MARK(s(z0)) -> c65(ACTIVE(s(mark(z0))), S(mark(z0)), MARK(z0)) MARK(sel(z0, z1)) -> c66(ACTIVE(sel(mark(z0), mark(z1))), SEL(mark(z0), mark(z1)), MARK(z0), MARK(z1)) MARK(tail(z0)) -> c69(ACTIVE(tail(mark(z0))), TAIL(mark(z0)), MARK(z0)) MARK(take(z0, z1)) -> c70(ACTIVE(take(mark(z0), mark(z1))), TAKE(mark(z0), mark(z1)), MARK(z0), MARK(z1)) U11'(mark(z0), z1, z2, z3) -> c71(U11'(z0, z1, z2, z3)) U11'(z0, mark(z1), z2, z3) -> c72(U11'(z0, z1, z2, z3)) U11'(z0, z1, mark(z2), z3) -> c73(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, mark(z3)) -> c74(U11'(z0, z1, z2, z3)) U11'(active(z0), z1, z2, z3) -> c75(U11'(z0, z1, z2, z3)) U11'(z0, active(z1), z2, z3) -> c76(U11'(z0, z1, z2, z3)) U11'(z0, z1, active(z2), z3) -> c77(U11'(z0, z1, z2, z3)) U11'(z0, z1, z2, active(z3)) -> c78(U11'(z0, z1, z2, z3)) U12'(mark(z0), z1) -> c79(U12'(z0, z1)) U12'(z0, mark(z1)) -> c80(U12'(z0, z1)) U12'(active(z0), z1) -> c81(U12'(z0, z1)) U12'(z0, active(z1)) -> c82(U12'(z0, z1)) SPLITAT(mark(z0), z1) -> c83(SPLITAT(z0, z1)) SPLITAT(z0, mark(z1)) -> c84(SPLITAT(z0, z1)) SPLITAT(active(z0), z1) -> c85(SPLITAT(z0, z1)) SPLITAT(z0, active(z1)) -> c86(SPLITAT(z0, z1)) PAIR(mark(z0), z1) -> c87(PAIR(z0, z1)) PAIR(z0, mark(z1)) -> c88(PAIR(z0, z1)) PAIR(active(z0), z1) -> c89(PAIR(z0, z1)) PAIR(z0, active(z1)) -> c90(PAIR(z0, z1)) CONS(mark(z0), z1) -> c91(CONS(z0, z1)) CONS(z0, mark(z1)) -> c92(CONS(z0, z1)) CONS(active(z0), z1) -> c93(CONS(z0, z1)) CONS(z0, active(z1)) -> c94(CONS(z0, z1)) AFTERNTH(mark(z0), z1) -> c95(AFTERNTH(z0, z1)) AFTERNTH(z0, mark(z1)) -> c96(AFTERNTH(z0, z1)) AFTERNTH(active(z0), z1) -> c97(AFTERNTH(z0, z1)) AFTERNTH(z0, active(z1)) -> c98(AFTERNTH(z0, z1)) SND(mark(z0)) -> c99(SND(z0)) SND(active(z0)) -> c100(SND(z0)) AND(mark(z0), z1) -> c101(AND(z0, z1)) AND(z0, mark(z1)) -> c102(AND(z0, z1)) AND(active(z0), z1) -> c103(AND(z0, z1)) AND(z0, active(z1)) -> c104(AND(z0, z1)) FST(mark(z0)) -> c105(FST(z0)) FST(active(z0)) -> c106(FST(z0)) HEAD(mark(z0)) -> c107(HEAD(z0)) HEAD(active(z0)) -> c108(HEAD(z0)) NATSFROM(mark(z0)) -> c109(NATSFROM(z0)) NATSFROM(active(z0)) -> c110(NATSFROM(z0)) S(mark(z0)) -> c111(S(z0)) S(active(z0)) -> c112(S(z0)) SEL(mark(z0), z1) -> c113(SEL(z0, z1)) SEL(z0, mark(z1)) -> c114(SEL(z0, z1)) SEL(active(z0), z1) -> c115(SEL(z0, z1)) SEL(z0, active(z1)) -> c116(SEL(z0, z1)) TAIL(mark(z0)) -> c117(TAIL(z0)) TAIL(active(z0)) -> c118(TAIL(z0)) TAKE(mark(z0), z1) -> c119(TAKE(z0, z1)) TAKE(z0, mark(z1)) -> c120(TAKE(z0, z1)) TAKE(active(z0), z1) -> c121(TAKE(z0, z1)) TAKE(z0, active(z1)) -> c122(TAKE(z0, z1)) ACTIVE(afterNth(z0, z1)) -> c42(MARK(snd(splitAt(z0, z1))), SPLITAT(z0, z1)) ACTIVE(natsFrom(z0)) -> c46(MARK(cons(z0, natsFrom(s(z0)))), S(z0)) ACTIVE(sel(z0, z1)) -> c47(MARK(head(afterNth(z0, z1))), AFTERNTH(z0, z1)) ACTIVE(take(z0, z1)) -> c52(MARK(fst(splitAt(z0, z1))), SPLITAT(z0, z1)) MARK(tt) -> c54 MARK(0) -> c67 MARK(nil) -> c68 MARK(U11(z0, z1, z2, z3)) -> c53(ACTIVE(U11(z0, z1, z2, z3)), U11'(mark(z0), z1, z2, z3), MARK(z0)) MARK(U11(U11(z0, z1, z2, z3), x1, x2, x3)) -> c53(ACTIVE(U11(active(U11(mark(z0), z1, z2, z3)), x1, x2, x3)), U11'(mark(U11(z0, z1, z2, z3)), x1, x2, x3), MARK(U11(z0, z1, z2, z3))) MARK(U11(tt, x1, x2, x3)) -> c53(ACTIVE(U11(active(tt), x1, x2, x3)), U11'(mark(tt), x1, x2, x3), MARK(tt)) MARK(U11(U12(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(U12(mark(z0), z1)), x1, x2, x3)), U11'(mark(U12(z0, z1)), x1, x2, x3), MARK(U12(z0, z1))) MARK(U11(splitAt(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(splitAt(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(splitAt(z0, z1)), x1, x2, x3), MARK(splitAt(z0, z1))) MARK(U11(pair(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(pair(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(pair(z0, z1)), x1, x2, x3), MARK(pair(z0, z1))) MARK(U11(cons(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(cons(mark(z0), z1)), x1, x2, x3)), U11'(mark(cons(z0, z1)), x1, x2, x3), MARK(cons(z0, z1))) MARK(U11(afterNth(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(afterNth(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(afterNth(z0, z1)), x1, x2, x3), MARK(afterNth(z0, z1))) MARK(U11(snd(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(snd(mark(z0))), x1, x2, x3)), U11'(mark(snd(z0)), x1, x2, x3), MARK(snd(z0))) MARK(U11(and(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(and(mark(z0), z1)), x1, x2, x3)), U11'(mark(and(z0, z1)), x1, x2, x3), MARK(and(z0, z1))) MARK(U11(fst(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(fst(mark(z0))), x1, x2, x3)), U11'(mark(fst(z0)), x1, x2, x3), MARK(fst(z0))) MARK(U11(head(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(head(mark(z0))), x1, x2, x3)), U11'(mark(head(z0)), x1, x2, x3), MARK(head(z0))) MARK(U11(natsFrom(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(natsFrom(mark(z0))), x1, x2, x3)), U11'(mark(natsFrom(z0)), x1, x2, x3), MARK(natsFrom(z0))) MARK(U11(s(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(s(mark(z0))), x1, x2, x3)), U11'(mark(s(z0)), x1, x2, x3), MARK(s(z0))) MARK(U11(sel(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(sel(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(sel(z0, z1)), x1, x2, x3), MARK(sel(z0, z1))) MARK(U11(0, x1, x2, x3)) -> c53(ACTIVE(U11(active(0), x1, x2, x3)), U11'(mark(0), x1, x2, x3), MARK(0)) MARK(U11(nil, x1, x2, x3)) -> c53(ACTIVE(U11(active(nil), x1, x2, x3)), U11'(mark(nil), x1, x2, x3), MARK(nil)) MARK(U11(tail(z0), x1, x2, x3)) -> c53(ACTIVE(U11(active(tail(mark(z0))), x1, x2, x3)), U11'(mark(tail(z0)), x1, x2, x3), MARK(tail(z0))) MARK(U11(take(z0, z1), x1, x2, x3)) -> c53(ACTIVE(U11(active(take(mark(z0), mark(z1))), x1, x2, x3)), U11'(mark(take(z0, z1)), x1, x2, x3), MARK(take(z0, z1))) MARK(U11(x0, x1, x2, x3)) -> c53(U11'(mark(x0), x1, x2, x3)) MARK(U12(z0, z1)) -> c55(ACTIVE(U12(z0, z1)), U12'(mark(z0), z1), MARK(z0)) MARK(U12(U11(z0, z1, z2, z3), x1)) -> c55(ACTIVE(U12(active(U11(mark(z0), z1, z2, z3)), x1)), U12'(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(U12(tt, x1)) -> c55(ACTIVE(U12(active(tt), x1)), U12'(mark(tt), x1), MARK(tt)) MARK(U12(U12(z0, z1), x1)) -> c55(ACTIVE(U12(active(U12(mark(z0), z1)), x1)), U12'(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(U12(splitAt(z0, z1), x1)) -> c55(ACTIVE(U12(active(splitAt(mark(z0), mark(z1))), x1)), U12'(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(U12(pair(z0, z1), x1)) -> c55(ACTIVE(U12(active(pair(mark(z0), mark(z1))), x1)), U12'(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(U12(cons(z0, z1), x1)) -> c55(ACTIVE(U12(active(cons(mark(z0), z1)), x1)), U12'(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(U12(afterNth(z0, z1), x1)) -> c55(ACTIVE(U12(active(afterNth(mark(z0), mark(z1))), x1)), U12'(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(U12(snd(z0), x1)) -> c55(ACTIVE(U12(active(snd(mark(z0))), x1)), U12'(mark(snd(z0)), x1), MARK(snd(z0))) MARK(U12(and(z0, z1), x1)) -> c55(ACTIVE(U12(active(and(mark(z0), z1)), x1)), U12'(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(U12(fst(z0), x1)) -> c55(ACTIVE(U12(active(fst(mark(z0))), x1)), U12'(mark(fst(z0)), x1), MARK(fst(z0))) MARK(U12(head(z0), x1)) -> c55(ACTIVE(U12(active(head(mark(z0))), x1)), U12'(mark(head(z0)), x1), MARK(head(z0))) MARK(U12(natsFrom(z0), x1)) -> c55(ACTIVE(U12(active(natsFrom(mark(z0))), x1)), U12'(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(U12(s(z0), x1)) -> c55(ACTIVE(U12(active(s(mark(z0))), x1)), U12'(mark(s(z0)), x1), MARK(s(z0))) MARK(U12(sel(z0, z1), x1)) -> c55(ACTIVE(U12(active(sel(mark(z0), mark(z1))), x1)), U12'(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(U12(0, x1)) -> c55(ACTIVE(U12(active(0), x1)), U12'(mark(0), x1), MARK(0)) MARK(U12(nil, x1)) -> c55(ACTIVE(U12(active(nil), x1)), U12'(mark(nil), x1), MARK(nil)) MARK(U12(tail(z0), x1)) -> c55(ACTIVE(U12(active(tail(mark(z0))), x1)), U12'(mark(tail(z0)), x1), MARK(tail(z0))) MARK(U12(take(z0, z1), x1)) -> c55(ACTIVE(U12(active(take(mark(z0), mark(z1))), x1)), U12'(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(U12(x0, x1)) -> c55(U12'(mark(x0), x1)) MARK(splitAt(z0, x1)) -> c56(ACTIVE(splitAt(z0, mark(x1))), SPLITAT(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(splitAt(x0, z1)) -> c56(ACTIVE(splitAt(mark(x0), z1)), SPLITAT(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(splitAt(x0, U11(z0, z1, z2, z3))) -> c56(ACTIVE(splitAt(mark(x0), active(U11(mark(z0), z1, z2, z3)))), SPLITAT(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(splitAt(x0, tt)) -> c56(ACTIVE(splitAt(mark(x0), active(tt))), SPLITAT(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(splitAt(x0, U12(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(U12(mark(z0), z1)))), SPLITAT(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(splitAt(x0, splitAt(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(splitAt(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(splitAt(x0, pair(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(pair(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(splitAt(x0, cons(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(cons(mark(z0), z1)))), SPLITAT(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(splitAt(x0, afterNth(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(afterNth(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(splitAt(x0, snd(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(snd(mark(z0))))), SPLITAT(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(splitAt(x0, and(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(and(mark(z0), z1)))), SPLITAT(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(splitAt(x0, fst(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(fst(mark(z0))))), SPLITAT(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(splitAt(x0, head(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(head(mark(z0))))), SPLITAT(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(splitAt(x0, natsFrom(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(natsFrom(mark(z0))))), SPLITAT(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(splitAt(x0, s(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(s(mark(z0))))), SPLITAT(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(splitAt(x0, sel(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(sel(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(splitAt(x0, 0)) -> c56(ACTIVE(splitAt(mark(x0), active(0))), SPLITAT(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(splitAt(x0, nil)) -> c56(ACTIVE(splitAt(mark(x0), active(nil))), SPLITAT(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(splitAt(x0, tail(z0))) -> c56(ACTIVE(splitAt(mark(x0), active(tail(mark(z0))))), SPLITAT(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(splitAt(x0, take(z0, z1))) -> c56(ACTIVE(splitAt(mark(x0), active(take(mark(z0), mark(z1))))), SPLITAT(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(splitAt(U11(z0, z1, z2, z3), x1)) -> c56(ACTIVE(splitAt(active(U11(mark(z0), z1, z2, z3)), mark(x1))), SPLITAT(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(splitAt(tt, x1)) -> c56(ACTIVE(splitAt(active(tt), mark(x1))), SPLITAT(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(splitAt(U12(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(U12(mark(z0), z1)), mark(x1))), SPLITAT(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(splitAt(splitAt(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(splitAt(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(splitAt(pair(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(pair(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(splitAt(cons(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(cons(mark(z0), z1)), mark(x1))), SPLITAT(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(splitAt(afterNth(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(afterNth(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(splitAt(snd(z0), x1)) -> c56(ACTIVE(splitAt(active(snd(mark(z0))), mark(x1))), SPLITAT(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(splitAt(and(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(and(mark(z0), z1)), mark(x1))), SPLITAT(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(splitAt(fst(z0), x1)) -> c56(ACTIVE(splitAt(active(fst(mark(z0))), mark(x1))), SPLITAT(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(splitAt(head(z0), x1)) -> c56(ACTIVE(splitAt(active(head(mark(z0))), mark(x1))), SPLITAT(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(splitAt(natsFrom(z0), x1)) -> c56(ACTIVE(splitAt(active(natsFrom(mark(z0))), mark(x1))), SPLITAT(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(splitAt(s(z0), x1)) -> c56(ACTIVE(splitAt(active(s(mark(z0))), mark(x1))), SPLITAT(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(splitAt(sel(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(sel(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(splitAt(0, x1)) -> c56(ACTIVE(splitAt(active(0), mark(x1))), SPLITAT(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(splitAt(nil, x1)) -> c56(ACTIVE(splitAt(active(nil), mark(x1))), SPLITAT(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(splitAt(tail(z0), x1)) -> c56(ACTIVE(splitAt(active(tail(mark(z0))), mark(x1))), SPLITAT(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(splitAt(take(z0, z1), x1)) -> c56(ACTIVE(splitAt(active(take(mark(z0), mark(z1))), mark(x1))), SPLITAT(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(pair(z0, x1)) -> c57(ACTIVE(pair(z0, mark(x1))), PAIR(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(pair(x0, z1)) -> c57(ACTIVE(pair(mark(x0), z1)), PAIR(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(pair(x0, U11(z0, z1, z2, z3))) -> c57(ACTIVE(pair(mark(x0), active(U11(mark(z0), z1, z2, z3)))), PAIR(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(pair(x0, tt)) -> c57(ACTIVE(pair(mark(x0), active(tt))), PAIR(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(pair(x0, U12(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(U12(mark(z0), z1)))), PAIR(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(pair(x0, splitAt(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(splitAt(mark(z0), mark(z1))))), PAIR(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(pair(x0, pair(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(pair(mark(z0), mark(z1))))), PAIR(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(pair(x0, cons(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(cons(mark(z0), z1)))), PAIR(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(pair(x0, afterNth(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(afterNth(mark(z0), mark(z1))))), PAIR(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(pair(x0, snd(z0))) -> c57(ACTIVE(pair(mark(x0), active(snd(mark(z0))))), PAIR(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(pair(x0, and(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(and(mark(z0), z1)))), PAIR(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(pair(x0, fst(z0))) -> c57(ACTIVE(pair(mark(x0), active(fst(mark(z0))))), PAIR(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(pair(x0, head(z0))) -> c57(ACTIVE(pair(mark(x0), active(head(mark(z0))))), PAIR(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(pair(x0, natsFrom(z0))) -> c57(ACTIVE(pair(mark(x0), active(natsFrom(mark(z0))))), PAIR(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(pair(x0, s(z0))) -> c57(ACTIVE(pair(mark(x0), active(s(mark(z0))))), PAIR(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(pair(x0, sel(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(sel(mark(z0), mark(z1))))), PAIR(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(pair(x0, 0)) -> c57(ACTIVE(pair(mark(x0), active(0))), PAIR(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(pair(x0, nil)) -> c57(ACTIVE(pair(mark(x0), active(nil))), PAIR(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(pair(x0, tail(z0))) -> c57(ACTIVE(pair(mark(x0), active(tail(mark(z0))))), PAIR(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(pair(x0, take(z0, z1))) -> c57(ACTIVE(pair(mark(x0), active(take(mark(z0), mark(z1))))), PAIR(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(pair(U11(z0, z1, z2, z3), x1)) -> c57(ACTIVE(pair(active(U11(mark(z0), z1, z2, z3)), mark(x1))), PAIR(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(pair(tt, x1)) -> c57(ACTIVE(pair(active(tt), mark(x1))), PAIR(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(pair(U12(z0, z1), x1)) -> c57(ACTIVE(pair(active(U12(mark(z0), z1)), mark(x1))), PAIR(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(pair(splitAt(z0, z1), x1)) -> c57(ACTIVE(pair(active(splitAt(mark(z0), mark(z1))), mark(x1))), PAIR(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(pair(pair(z0, z1), x1)) -> c57(ACTIVE(pair(active(pair(mark(z0), mark(z1))), mark(x1))), PAIR(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(pair(cons(z0, z1), x1)) -> c57(ACTIVE(pair(active(cons(mark(z0), z1)), mark(x1))), PAIR(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(pair(afterNth(z0, z1), x1)) -> c57(ACTIVE(pair(active(afterNth(mark(z0), mark(z1))), mark(x1))), PAIR(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(pair(snd(z0), x1)) -> c57(ACTIVE(pair(active(snd(mark(z0))), mark(x1))), PAIR(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(pair(and(z0, z1), x1)) -> c57(ACTIVE(pair(active(and(mark(z0), z1)), mark(x1))), PAIR(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(pair(fst(z0), x1)) -> c57(ACTIVE(pair(active(fst(mark(z0))), mark(x1))), PAIR(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(pair(head(z0), x1)) -> c57(ACTIVE(pair(active(head(mark(z0))), mark(x1))), PAIR(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(pair(natsFrom(z0), x1)) -> c57(ACTIVE(pair(active(natsFrom(mark(z0))), mark(x1))), PAIR(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(pair(s(z0), x1)) -> c57(ACTIVE(pair(active(s(mark(z0))), mark(x1))), PAIR(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(pair(sel(z0, z1), x1)) -> c57(ACTIVE(pair(active(sel(mark(z0), mark(z1))), mark(x1))), PAIR(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(pair(0, x1)) -> c57(ACTIVE(pair(active(0), mark(x1))), PAIR(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(pair(nil, x1)) -> c57(ACTIVE(pair(active(nil), mark(x1))), PAIR(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(pair(tail(z0), x1)) -> c57(ACTIVE(pair(active(tail(mark(z0))), mark(x1))), PAIR(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(pair(take(z0, z1), x1)) -> c57(ACTIVE(pair(active(take(mark(z0), mark(z1))), mark(x1))), PAIR(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) MARK(cons(U11(z0, z1, z2, z3), x1)) -> c58(ACTIVE(cons(active(U11(mark(z0), z1, z2, z3)), x1)), CONS(mark(U11(z0, z1, z2, z3)), x1), MARK(U11(z0, z1, z2, z3))) MARK(cons(tt, x1)) -> c58(ACTIVE(cons(active(tt), x1)), CONS(mark(tt), x1), MARK(tt)) MARK(cons(U12(z0, z1), x1)) -> c58(ACTIVE(cons(active(U12(mark(z0), z1)), x1)), CONS(mark(U12(z0, z1)), x1), MARK(U12(z0, z1))) MARK(cons(splitAt(z0, z1), x1)) -> c58(ACTIVE(cons(active(splitAt(mark(z0), mark(z1))), x1)), CONS(mark(splitAt(z0, z1)), x1), MARK(splitAt(z0, z1))) MARK(cons(pair(z0, z1), x1)) -> c58(ACTIVE(cons(active(pair(mark(z0), mark(z1))), x1)), CONS(mark(pair(z0, z1)), x1), MARK(pair(z0, z1))) MARK(cons(cons(z0, z1), x1)) -> c58(ACTIVE(cons(active(cons(mark(z0), z1)), x1)), CONS(mark(cons(z0, z1)), x1), MARK(cons(z0, z1))) MARK(cons(afterNth(z0, z1), x1)) -> c58(ACTIVE(cons(active(afterNth(mark(z0), mark(z1))), x1)), CONS(mark(afterNth(z0, z1)), x1), MARK(afterNth(z0, z1))) MARK(cons(snd(z0), x1)) -> c58(ACTIVE(cons(active(snd(mark(z0))), x1)), CONS(mark(snd(z0)), x1), MARK(snd(z0))) MARK(cons(and(z0, z1), x1)) -> c58(ACTIVE(cons(active(and(mark(z0), z1)), x1)), CONS(mark(and(z0, z1)), x1), MARK(and(z0, z1))) MARK(cons(fst(z0), x1)) -> c58(ACTIVE(cons(active(fst(mark(z0))), x1)), CONS(mark(fst(z0)), x1), MARK(fst(z0))) MARK(cons(head(z0), x1)) -> c58(ACTIVE(cons(active(head(mark(z0))), x1)), CONS(mark(head(z0)), x1), MARK(head(z0))) MARK(cons(natsFrom(z0), x1)) -> c58(ACTIVE(cons(active(natsFrom(mark(z0))), x1)), CONS(mark(natsFrom(z0)), x1), MARK(natsFrom(z0))) MARK(cons(s(z0), x1)) -> c58(ACTIVE(cons(active(s(mark(z0))), x1)), CONS(mark(s(z0)), x1), MARK(s(z0))) MARK(cons(sel(z0, z1), x1)) -> c58(ACTIVE(cons(active(sel(mark(z0), mark(z1))), x1)), CONS(mark(sel(z0, z1)), x1), MARK(sel(z0, z1))) MARK(cons(0, x1)) -> c58(ACTIVE(cons(active(0), x1)), CONS(mark(0), x1), MARK(0)) MARK(cons(nil, x1)) -> c58(ACTIVE(cons(active(nil), x1)), CONS(mark(nil), x1), MARK(nil)) MARK(cons(tail(z0), x1)) -> c58(ACTIVE(cons(active(tail(mark(z0))), x1)), CONS(mark(tail(z0)), x1), MARK(tail(z0))) MARK(cons(take(z0, z1), x1)) -> c58(ACTIVE(cons(active(take(mark(z0), mark(z1))), x1)), CONS(mark(take(z0, z1)), x1), MARK(take(z0, z1))) MARK(cons(x0, x1)) -> c58(CONS(mark(x0), x1)) MARK(cons(z0, z1)) -> c58(CONS(mark(z0), z1), MARK(z0)) MARK(afterNth(z0, x1)) -> c59(ACTIVE(afterNth(z0, mark(x1))), AFTERNTH(mark(z0), mark(x1)), MARK(z0), MARK(x1)) MARK(afterNth(x0, z1)) -> c59(ACTIVE(afterNth(mark(x0), z1)), AFTERNTH(mark(x0), mark(z1)), MARK(x0), MARK(z1)) MARK(afterNth(x0, U11(z0, z1, z2, z3))) -> c59(ACTIVE(afterNth(mark(x0), active(U11(mark(z0), z1, z2, z3)))), AFTERNTH(mark(x0), mark(U11(z0, z1, z2, z3))), MARK(x0), MARK(U11(z0, z1, z2, z3))) MARK(afterNth(x0, tt)) -> c59(ACTIVE(afterNth(mark(x0), active(tt))), AFTERNTH(mark(x0), mark(tt)), MARK(x0), MARK(tt)) MARK(afterNth(x0, U12(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(U12(mark(z0), z1)))), AFTERNTH(mark(x0), mark(U12(z0, z1))), MARK(x0), MARK(U12(z0, z1))) MARK(afterNth(x0, splitAt(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(splitAt(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(splitAt(z0, z1))), MARK(x0), MARK(splitAt(z0, z1))) MARK(afterNth(x0, pair(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(pair(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(pair(z0, z1))), MARK(x0), MARK(pair(z0, z1))) MARK(afterNth(x0, cons(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(cons(mark(z0), z1)))), AFTERNTH(mark(x0), mark(cons(z0, z1))), MARK(x0), MARK(cons(z0, z1))) MARK(afterNth(x0, afterNth(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(afterNth(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(afterNth(z0, z1))), MARK(x0), MARK(afterNth(z0, z1))) MARK(afterNth(x0, snd(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(snd(mark(z0))))), AFTERNTH(mark(x0), mark(snd(z0))), MARK(x0), MARK(snd(z0))) MARK(afterNth(x0, and(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(and(mark(z0), z1)))), AFTERNTH(mark(x0), mark(and(z0, z1))), MARK(x0), MARK(and(z0, z1))) MARK(afterNth(x0, fst(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(fst(mark(z0))))), AFTERNTH(mark(x0), mark(fst(z0))), MARK(x0), MARK(fst(z0))) MARK(afterNth(x0, head(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(head(mark(z0))))), AFTERNTH(mark(x0), mark(head(z0))), MARK(x0), MARK(head(z0))) MARK(afterNth(x0, natsFrom(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(natsFrom(mark(z0))))), AFTERNTH(mark(x0), mark(natsFrom(z0))), MARK(x0), MARK(natsFrom(z0))) MARK(afterNth(x0, s(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(s(mark(z0))))), AFTERNTH(mark(x0), mark(s(z0))), MARK(x0), MARK(s(z0))) MARK(afterNth(x0, sel(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(sel(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(sel(z0, z1))), MARK(x0), MARK(sel(z0, z1))) MARK(afterNth(x0, 0)) -> c59(ACTIVE(afterNth(mark(x0), active(0))), AFTERNTH(mark(x0), mark(0)), MARK(x0), MARK(0)) MARK(afterNth(x0, nil)) -> c59(ACTIVE(afterNth(mark(x0), active(nil))), AFTERNTH(mark(x0), mark(nil)), MARK(x0), MARK(nil)) MARK(afterNth(x0, tail(z0))) -> c59(ACTIVE(afterNth(mark(x0), active(tail(mark(z0))))), AFTERNTH(mark(x0), mark(tail(z0))), MARK(x0), MARK(tail(z0))) MARK(afterNth(x0, take(z0, z1))) -> c59(ACTIVE(afterNth(mark(x0), active(take(mark(z0), mark(z1))))), AFTERNTH(mark(x0), mark(take(z0, z1))), MARK(x0), MARK(take(z0, z1))) MARK(afterNth(U11(z0, z1, z2, z3), x1)) -> c59(ACTIVE(afterNth(active(U11(mark(z0), z1, z2, z3)), mark(x1))), AFTERNTH(mark(U11(z0, z1, z2, z3)), mark(x1)), MARK(U11(z0, z1, z2, z3)), MARK(x1)) MARK(afterNth(tt, x1)) -> c59(ACTIVE(afterNth(active(tt), mark(x1))), AFTERNTH(mark(tt), mark(x1)), MARK(tt), MARK(x1)) MARK(afterNth(U12(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(U12(mark(z0), z1)), mark(x1))), AFTERNTH(mark(U12(z0, z1)), mark(x1)), MARK(U12(z0, z1)), MARK(x1)) MARK(afterNth(splitAt(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(splitAt(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(splitAt(z0, z1)), mark(x1)), MARK(splitAt(z0, z1)), MARK(x1)) MARK(afterNth(pair(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(pair(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(pair(z0, z1)), mark(x1)), MARK(pair(z0, z1)), MARK(x1)) MARK(afterNth(cons(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(cons(mark(z0), z1)), mark(x1))), AFTERNTH(mark(cons(z0, z1)), mark(x1)), MARK(cons(z0, z1)), MARK(x1)) MARK(afterNth(afterNth(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(afterNth(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(afterNth(z0, z1)), mark(x1)), MARK(afterNth(z0, z1)), MARK(x1)) MARK(afterNth(snd(z0), x1)) -> c59(ACTIVE(afterNth(active(snd(mark(z0))), mark(x1))), AFTERNTH(mark(snd(z0)), mark(x1)), MARK(snd(z0)), MARK(x1)) MARK(afterNth(and(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(and(mark(z0), z1)), mark(x1))), AFTERNTH(mark(and(z0, z1)), mark(x1)), MARK(and(z0, z1)), MARK(x1)) MARK(afterNth(fst(z0), x1)) -> c59(ACTIVE(afterNth(active(fst(mark(z0))), mark(x1))), AFTERNTH(mark(fst(z0)), mark(x1)), MARK(fst(z0)), MARK(x1)) MARK(afterNth(head(z0), x1)) -> c59(ACTIVE(afterNth(active(head(mark(z0))), mark(x1))), AFTERNTH(mark(head(z0)), mark(x1)), MARK(head(z0)), MARK(x1)) MARK(afterNth(natsFrom(z0), x1)) -> c59(ACTIVE(afterNth(active(natsFrom(mark(z0))), mark(x1))), AFTERNTH(mark(natsFrom(z0)), mark(x1)), MARK(natsFrom(z0)), MARK(x1)) MARK(afterNth(s(z0), x1)) -> c59(ACTIVE(afterNth(active(s(mark(z0))), mark(x1))), AFTERNTH(mark(s(z0)), mark(x1)), MARK(s(z0)), MARK(x1)) MARK(afterNth(sel(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(sel(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(sel(z0, z1)), mark(x1)), MARK(sel(z0, z1)), MARK(x1)) MARK(afterNth(0, x1)) -> c59(ACTIVE(afterNth(active(0), mark(x1))), AFTERNTH(mark(0), mark(x1)), MARK(0), MARK(x1)) MARK(afterNth(nil, x1)) -> c59(ACTIVE(afterNth(active(nil), mark(x1))), AFTERNTH(mark(nil), mark(x1)), MARK(nil), MARK(x1)) MARK(afterNth(tail(z0), x1)) -> c59(ACTIVE(afterNth(active(tail(mark(z0))), mark(x1))), AFTERNTH(mark(tail(z0)), mark(x1)), MARK(tail(z0)), MARK(x1)) MARK(afterNth(take(z0, z1), x1)) -> c59(ACTIVE(afterNth(active(take(mark(z0), mark(z1))), mark(x1))), AFTERNTH(mark(take(z0, z1)), mark(x1)), MARK(take(z0, z1)), MARK(x1)) K tuples:none Defined Rule Symbols: encArg_1, active_1, mark_1, U11_4, U12_2, splitAt_2, pair_2, cons_2, afterNth_2, snd_1, and_2, fst_1, head_1, natsFrom_1, s_1, sel_2, tail_1, take_2 Defined Pair Symbols: ACTIVE_1, MARK_1, U11'_4, U12'_2, SPLITAT_2, PAIR_2, CONS_2, AFTERNTH_2, SND_1, AND_2, FST_1, HEAD_1, NATSFROM_1, S_1, SEL_2, TAIL_1, TAKE_2, ENCODE_ACTIVE_1, ENCODE_U11_4, ENCODE_MARK_1, ENCODE_U12_2, ENCODE_SPLITAT_2, ENCODE_PAIR_2, ENCODE_CONS_2, ENCODE_AFTERNTH_2, ENCODE_SND_1, ENCODE_AND_2, ENCODE_FST_1, ENCODE_HEAD_1, ENCODE_NATSFROM_1, ENCODE_S_1, ENCODE_SEL_2, ENCODE_TAIL_1, ENCODE_TAKE_2, ENCARG_1 Compound Symbols: c40_3, c41_3, c43_1, c44_1, c45_1, c48_1, c49_2, c50_2, c51_1, c60_3, c61_3, c62_3, c63_3, c64_3, c65_3, c66_4, c69_3, c70_4, 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, c42_2, c46_2, c47_2, c52_2, c54, c67, c68, c_1, c3_2, c4_2, c4_1, c5_5, c5_4, c6_3, c6_2, c7_3, c7_2, c8_3, c8_2, c9_3, c9_2, c10_3, c10_2, c11_2, c12_3, c12_2, c13_2, c14_2, c15_2, c16_2, c17_3, c17_2, c18_2, c19_3, c19_2, c53_3, c53_1, c55_3, c55_1, c56_4, c57_4, c58_3, c58_1, c58_2, c59_4